2012-03-13 2 views
2

私はAndroid用のJavaを行ってEclipseで作業しています。私はデータベースのテーブル内の行の量を返すと仮定している私のデータベースマネージャクラスのメソッドを持つ小さな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); しかし、それはエラーを投げていた..

+0

'c.getString(0)'を印刷すると、何が出力されますか? 'c.getInt(0)'の結果はすでに 'int' – zapl

答えて

0

私はあなたがカーソルを与えていないときにそれをカーソルに戻していると思います。 intまたはlongを試してください。

+0

であるはずです。実際には間違ったコードのverionをそこに置いていました。私はそれを更新しました..上を見てください。正しい結果を、間違ったフォーマットで – erik

関連する問題