SQLite3中文编码 Python

2020-01-13 11:16:49 浏览数 (1)

读取十万多条文本写入SQLite类型数据库,由于文本中存在中文字符,插入到数据库没错,取出时一直是UnicodeDecodeError,导致折腾了一天。 

最后的解决方法

Python连接数据时进行如下设置:

db=sqlite3.connection("...")

db.text_factory=st

另为了python代码中硬编码的中文字符串不出现问题,除了在源码开始添加

# -*- coding:utf-8 -*-  

设置python源码的编码为utf-8

import sys

reload(sys)

sys.setdefaultencode('utf8')

Python操作SQLite3参考:https://docs.python.org/2/library/sqlite3.html

英文阅读有困难的参考:http://python.usyiyi.cn/python_278/library/sqlite3.html

0 人点赞