SQLITE3数据库读取出来老乱码

愁肠百结 2013-08-29 05:58:56
我有一数据库文件,下载地址:度娘云盘中http://pan.baidu.com/share/link?shareid=2862693026&uk=2483322549
我仅会点VB/VB.NET/VBA皮毛,研究了一周但对读出的中文字段乱码问题无法解决,恳请诸位帮助用我熟悉的VB系列语言将这个小小的DB数据正常读出来。(C#也可,只要木有语法错误,可以转成VB.NET,抑或知道转变关键流程的)

一、基本情况

1、该数据库我已经将不相关表删除;
2、该数据库应当是UTF8格式的,或者我判断错误。
3、通过SQLITE expert工具能打开数据库,用其UNICODE查看乱码,改用其ANSI正常显示了。

二、我的措施简介
1、试图通过VBA将表读到EXCEL中,结果ASCII码中的英文、数字等正常,汉字乱码;
通过注册SQLITE3.DLL读取数据库,用网上几个以API函数MULTIBYTETOWIDECHAR编写自定义函数解码,效果不行。但它们可以解码我测试用的字符串,证明其功能正常。


2、VB.net也读不出中文来,我用SQLITE.ADO.NET读取数据库,用ENCODING.UTF8或ENCODING.GETENCODING(中文代码页编码),都不行,用UTF8字符串测试也可解码成中文,但是从数据库中读来的字符串就是不行。囧死。
...全文
926 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
愁肠百结 2013-08-31
  • 打赏
  • 举报
回复
引用 3 楼 WWWWA 的回复:
SQLITE默认是UTF字符,估计写入SQLITE时已经乱码了
这数据库是某一系统的一张表,同我在顶楼所说,该数据用SQLITE界面软件打开后说是UTF8,用哪个PARA什么命令,返回的编码也说是UTF8
WWWWA 2013-08-31
  • 打赏
  • 举报
回复
SQLITE默认是UTF字符,估计写入SQLITE时已经乱码了
愁肠百结 2013-08-30
  • 打赏
  • 举报
回复
当然我的意思是所有中文字段都乱码
WWWWA 2013-08-30
  • 打赏
  • 举报
回复
ur_sys_dim中的DIM_NAME中的内容在SQLITE3.7。2中是乱码

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧