我在eclipse中爲Android做Java。我有一個小的sqlite數據庫,它在我的數據庫管理器類中有一個方法,它假定返回數據庫表中的行數。返回二進制數的SQLite行號查詢
這個方法:
public int getHomeScreenTotal(){
SQLiteDatabase db=this.getReadableDatabase();
int rows = -1;
try {
rows = (int) db.compileStatement(
"SELECT COUNT(*) FROM " + homeIcons).simpleQueryForLong();
} catch (NullPointerException e) {
return -1;
}
return rows;
}
的問題是,無論我做什麼,它返回一個二進制,而不是一個int。所以不是返回3而是返回11,而不是4返回100,5/101等。
正如你可以看到我註釋掉INT基地,我試圖說迫使它進入一個在:
INT基準= 2; int total = Integer.parseInt(bin,base); 但它是拋出錯誤..
如果您打印'c.getString(0)',它會輸出什麼內容? 'c.getInt(0)'的結果應該已經是'int' – zapl 2012-03-13 18:16:10