我正在使用python扫描我的系统并将文件名输入sqlite3数据库。
其中一个文件的名称中碰巧有一个特殊字符,并且在插入记录时会产生错误。这是文件名。
a¿.mp3
这是查询
self.cursor.execute("INSERT INTO TRACKS VALUES (?)", i)
由于特殊字符,我无法在utf-8中对其进行编码。
我是否可以使用其他编码将此数据添加到数据库中?
答案 0 :(得分:0)
您可以尝试utf-16编码,或在特殊字符周围添加'。
答案 1 :(得分:0)
您是否正在使用os.walk
?如果这样做,请将目录名称不是作为裸字符串传递,而是作为unicode对象传递,例如os.walk(u'/some/path')
以获取unicode中的所有文件。然后你可以使用filename.encode('utf-8')