打开数据代码如下:
dbm = new DBManager(this.mContext);
dbm.openDatabase();
db = dbm.getDatabase();
查询省份
String sql = "select * from province";
Cursor cursor = db.rawQuery(sql,null);
cursor.moveToFirst();
取数据
byte bytes[]=cursor.getBlob(2);
String name=new String(bytes,"gb2312");
Log.i(DEBUG_TAG, "name = "+name);
这时,每次打印中出现的字符串后面都带有两个框框乱码,比如正常要输出“河北省”,但是输出“河北省??”,导致后续传递数据库命令时报错。
如
String sql = "update savedCity set name='" + name+ "'" + ", cityId='" + cityId + "' where key='save'";
Cursor cursor = db.rawQuery(sql,null);
求高手解答。
------解决方案--------------------
province表为什么要用Blob类型的name字段呢?
其实,如果你知道得到的name总是多两个字符,用substring删除不就行了。