sqlite3 jdbc、c接口、python接口处理中文时遇到的问题及其解决方法
来源:互联网 发布:58淘宝客服兼职靠谱吗 编辑:程序博客网 时间:2024/05/01 22:15
sqlite(版本3),以下简称sqlite3,目前功能已经非常强大。目前支持的字符集,包括UTF-8, UTF-16,UTF-16le,UTF-16be。
可是在我们直接使用gbk编码的时候,很可能就会遇到问题。
因为目前,很多人会使用c/c++接口来访问sqlite3数据库,当然,也有人使用python接口来访问它。
1. 使用python时,要想正确的取到c++接口insert/update以后的数据,需要设定Connection的text_factory值为str,
意思是直接使用原来存储时的encoding形式。
con=sqlite3.connect(r"e:/t/testsqlite3.db")
con.text_factory=str
2. 使用sqlite jdbc访问的时候,如果想正确的取到c接口insert/update以后的数据,必须进行转码。
不过,转码时很奇怪,居然是用到:
String.getBytes("ISO_8859_1"), "GBK")
看来,c接口存储到sqlite3里边的数据,默认都是ISO_8859_1格式的,除非在insert/update以前,将其转换成utf-8再进行入库操作。
目前,sqlite jdbc以及python默认的存储方式是将字符串转换成utf-8串,再进行入库,非常标准。它们自己的upsert操作,然后取出数据,不会有任何问题。这个在我的前一篇短文里也有详细的描述。
- sqlite3 jdbc、c接口、python接口处理中文时遇到的问题及其解决方法
- sqlite3的C接口
- SQLITE3的C接口
- sqlite3的c/c++接口
- 配置caffe python接口时遇到的一些问题
- CoreNLP Python接口处理中文
- jdbc接口及其驱动程序
- c语言的sqlite3接口的设计
- sqlite3常用的c语言函数接口
- 数据库:SQlite3的C接口相关函数
- 接口开发,写接口文档时遇到的问题
- 利用Anaconda配置python接口遇到的问题
- python接口测试中遇到问题
- 关于sqlite3的C接口中的sql语句的查找关键字需要带上引号的问题
- 利用caffe的python接口进行训练时遇到的问题
- delphi调用C#webservice接口的中文编码问题
- 记录使用python时遇到的中文 编码问题与解决方法
- Tokyo Cabinet及其Python接口的安装
- C#遍历IE窗体
- Open source makes a healthy site for healthy eaters
- c++中char * 和 char []的区别
- 雅虎没有“防弹衣” 雁鸣
- 启动CSDN博客志
- sqlite3 jdbc、c接口、python接口处理中文时遇到的问题及其解决方法
- Virtualbox 访问 USB 子系统 失败的解决方法
- Hibernate XXX.hbm.xml 里的class标签的 schema 属性解释
- 新的开始
- 超简单配置tomcat + struts
- SQLite的局限性
- linux 中的一点知识--必知十事
- 微软为什么能在中国所向披靡 雁鸣
- 我的生活