2012-02-11 14 views
0

AndroidのSQLiteDatabaseからデータを取得しようとすると、NullPointerExceptionが発生します。しかし、これらはNULLにすることはしていないようです、私はcurを記録し、そしてnamesSQLite cursor.getString()NullPointerException

SQLiteDatabase db = dbHelper.getReadableDatabase(); 
    Cursor cur = db.rawQuery("SELECT Campaign, sum(Score) AS Score, Player FROM Levels GROUP BY Campaign", null); 

    final int length = cur.getCount(); 
    names = new CampaignListItem[length]; 

    if (cur.moveToFirst()) { 
     int row = 0; 
     do { 
      names[row].name = cur.getString(0); <--NPE 
      names[row].score = cur.getInt(1); 
      names[row].player = cur.getString(2); 
      row++; 
     } while (cur.moveToLast()); 
    } 
    cur.close(); 
    db.close(); 

:私は生のクエリからカーソルを作成し、(インデックス)cur.getStringを呼ぶが、これはNullPointerExceptionがその結果です。私は何か間違っているのですか?

答えて

2

あなたの配列にはCampaignListItemsがありません。あなたは配列を作成するだけなので、そこにオブジェクトを追加しないからです。したがって、names [row]はnullです。

+0

私はそれを逃してしまったのですか?私は明日それを試しています。 – user717572

関連する問題