如果你能帮我解决这个问题,我将不胜感激。我想使用Python将.csv
(带有数据的5列)数据导入.db
格式。我从这里拿了脚本:
import sqlite3
import csv
class csvrd(object):
def csvFile(self):
self.readFile('c:/users/quant/desktop/trade.csv')
def readFile(self, filename):
conn = sqlite3.connect('c:/users/quant/desktop/ledger_4.db')
cur = conn.cursor()
cur.execute("""CREATE TABLE IF NOT EXISTS trading(date varchar,asset varchar,quant varchar,price varchar,com varchar)""")
filename.encode('utf-8')
print ("test1")
with open(filename) as f:
reader = csv.reader(f)
for field in reader:
cur.execute("INSERT INTO unicom VALUES (?,?,?,?,?);", field)
conn.commit()
conn.close()
c = csvrd().csvFile()
但不幸的是我得到了这个:
'charmap'编解码器无法解码位置62中的字节0x9d:字符映射到
您能告诉我代码有什么问题或者帮助我们导入csv
吗?非常感谢你提前!
谢谢您的回复!来自csv的几行:
根据Encoding Problem: Double Mis-Conversion或许您必须将文件读取为字节然后用0x9D
替换0xC3
然后解码它