2011-09-16 36 views
3
public String[] getData(){ 
    String[] columns = {KEY_ROWID, KEY_TIME, KEY_TXT}; 
    Object[] data; 

    Cursor c = database.query(DB_TABLE, columns, null, null, null, null, null); 
    int iRow = c.getColumnIndex(KEY_ROWID); 
    int iTime = c.getColumnIndex(KEY_TIME); 
    int iTxt = c.getColumnIndex(KEY_TXT); 
    for(c.moveToFirst(); !c.isAfterLast(); c.moveToNext()){ 

     data[c.getPosition()+1] = {c.getString(iRow), c.getString(iTime), c.getString(iTxt)}; 

    } 

    return data; 
} 

你幾乎可以知道我想要做什麼。無法更新for循環的數據變量。但我需要這樣做。怎麼樣?陣列常量只能用於初始化程序

+0

問題是什麼?爲什麼你嘗試將光標轉換爲數組? – thaussma

回答

3

您只需要使用稍微不同的語法:

data[c.getPosition()+1] = 
    new String[]{c.getString(iRow), c.getString(iTime), c.getString(iTxt)};