当前位置:数据库 > SQLite >>

android sqlite3 查询中文的问题

在数据库里的英文可以查询得到,但是中文就不行了,大家帮忙看看问题出现在哪 数据库里的数据是在ADB里插入的,中文数据在adb里可以查询得到,但是在程序里就不行了。 Cursor cursor=db.query("city",null,"CityA"+ "='" +"beijing" +"'",null, null, null, null); 可以查询 把beijing改为北京就没反应了,logcat也不报错 这些数据在表里一定是存在的 Cursor cursor=db.query("city",null,"CityA"+ "='" +"北京" +"'",null, null, null, null); cursor返回count=0; 搞了几天还是没辙啊 帮忙啊 怎么办 高手给个方法啊
答案:我来试着回答你的问题
中文中的一个字需要两个byte表示
Java中的char是2个byte,1个char可以存储一个字
sqlite3中的char是1个byte,2个char存储一个字
你检查下你代码中两种类型是否兼容

你参考下这段代码
byte bytes[]=cursor.getBlob(2);            
String sn=new String(bytes,"gb2312");

上一个:sqlite数据库被我不小心覆盖了,有没有办法恢复原来的数据?
下一个:在c#里使用了sqlite写的程序,在其他的机器上无法运行?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,