csv.writer语言 - TypeError: 'str' 不支持缓冲区接口



大家好,我会 导出获取数据库 sqlite 但是当我想要导出时,我得到 显示以下错误

    def ExportFile(self):
    self.cursor.execute("SELECT * FROM Book")
    dbFile = QFileDialog.getSaveFileName(parent=None,caption="Export 
    DataFile a File",directory=".",filter="CSV File(*.csv)")
    if dbFile[0]:
        with open(dbFile[0], "wb") as csvFile:
            csvWriter = csv.writer(csvFile,delimiter=',', 
            quotechar=""",quoting=csv.QUOTE_MINIMAL)
            rows = self.cursor.fetchall()
            rowCount = len(rows)
            for row in rows:
                csvWriter.writerow(row)
            QMessageBox.information(self,__appname__,"Succesfully Exported" 
            + str(rowCount) + " rows to a filern" + 
            str(QDir.toNativeSeparators(dbFile[0])))

此错误:

Traceback (most recent call last):
File "D:/Souerce/PyQT/Project/Library Management/main.py", line 303, in 
ExportFile
csvWriter.writerow(row)
TypeError: 'str' does not support the buffer interface
       self.cursor.execute("SELECT * FROM Book")
       dbFile = QFileDialog.getSaveFileName(parent=None,caption="Export 
       DataFile a File",directory=".",filter="CSV File(*.csv)")
    if dbFile[0]:
        with open(dbFile[0] + ".csv", "wb") as csvFile:
            csvWriter = csv.writer(csvFile,delimiter=',', 
            quotechar=""",quoting=csv.QUOTE_MINIMAL)
            rows = self.cursor.fetchall()
            rowCount = len(rows)
            for row in rows:
                csvWriter.writerow(bytes(row,"UTF-8"))

错误:

Traceback (most recent call last):
File "D:/Souerce/PyQT/Project/Library Management/main.py", line 303, in 
ExportFile
csvWriter.writerow(bytes(row,"UTF-8"))
TypeError: encoding or errors without a string argument

相关内容

最新更新