我正在查看Android SDK中的Notes應用程序示例。我想要學習如何做的是不使用CursorAdapter傳遞給ListAdpater/ListView進行排序,我想知道我可以如何自己處理數據;特別是以ArrayList形式。在這個例子中,一個筆記基本上有一個ID,標題和正文。我想知道如何查詢SQLite數據庫並使用它返回的遊標來收集數據並創建一個對象的對象實例,我將調用Note,它具有id,title和body的參數。我最終希望將所有這些對象存儲到ArrayList中進行管理。我只是不確定如何處理光標。這是一個相當普遍的問題,但我只需要有人指出我朝着正確的方向。獲取SQLite數據庫並將其存儲在一個對象數組中
4
A
回答
1
其實我玩了之後想通了自己。所以我意識到使用cursor.getColumnIndex("name_of_column")
將返回列索引,以用於cursor.getInt(cursor.getColumnIndex("_id"));
等命令。我所要做的只是使用for循環遍歷整個列表,並使用cursor.moveToNext()
來遍歷所收集的行。我在發佈這個問題後提出了這個分鐘。 :)
5
我可能沒有得到你的問題,但你需要查詢你的數據庫然後添加遊標數據到ArrayList?
List<String> pointsList = new ArrayList<String>();
database = openOrCreateDatabase("favorites", SQLiteDatabase.OPEN_READWRITE, null);
if(database!=null)
{
c= database.rawQuery(QUERY, null);
c.moveToFirst();
while(c.isAfterLast()==false)
{
pointsList.add(c.getInt(c.getColumnIndex("id")); // do the same for other columns
c.moveToNext();
}
}
database.close();
c.close();
0
這可以幫助你,
public ArrayList<ArrayList<Object>> getAllRowsAsArrays()
{
// create an ArrayList that will hold all the data collected from
// the database.
ArrayList<ArrayList<Object>> dataArrays = new ArrayList<ArrayList<Object>>();
// This is a database call that creates a "cursor" object.
// The cursor object store the information collected from the
// database and is used to iterate through the data.
Cursor cursor;
try
{
// ask the database object to create the cursor.
cursor = db.query(
TABLE_NAME,
new String[]{TABLE_ROW_ID, TABLE_ROW_ONE, TABLE_ROW_TWO},
null, null, null, null, null
);
// move the cursors pointer to position zero.
cursor.moveToFirst();
// if there is data after the current cursor position, add it
// to the ArrayList.
if (!cursor.isAfterLast())
{
do
{
ArrayList<Object> dataList = new ArrayList<Object>();
dataList.add(cursor.getLong(0));
dataList.add(cursor.getString(1));
dataList.add(cursor.getString(2));
dataArrays.add(dataList);
}
// move the cursor's pointer up one position.
while (cursor.moveToNext());
}
}
catch (SQLException e)
{
Log.e("DB Error", e.toString());
e.printStackTrace();
}
// return the ArrayList that holds the data collected from
// the database.
return dataArrays;
}
相關問題
- 1. 如何從MySQL獲取數據並將其存儲在sqlite中
- 2. 從數據庫中讀取一行數據並將其存儲到數組中
- 3. 如何從editText獲取日期並將其存儲在sqlite數據庫中
- 4. 將數組存儲到SQLite數據庫
- 5. 獲取json數組響應並將其存儲在另一個數組中
- 6. 解析日期並將其存儲在SQLite數據庫中
- 7. 如何在Android中將對象存儲到SQLite數據庫中?
- 8. 如何創建一個對象數組並將其存儲在一個cookie中
- 9. 從一個數據庫讀取數據並將其存儲在其他數據庫中
- 10. C#在將多個對象保存到數據庫後獲取一個List或一組id數組對象
- 11. Node.js將對象存儲在數據庫或數組中?
- 12. 如何從MySQL中獲取數據並存儲在Sqlite數據庫中android
- 13. 在iPhone上使用SQLite:我是否必須讀取整個數據庫並將其存儲到數組中?
- 14. 如何從單個文本框中獲取多個值並將其存儲在數組中並將其存儲在數據庫中
- 15. 獲取按鈕並將它們存儲在一個數組中
- 16. 從一個表中獲取數據並將其存儲到另一個表中
- 17. 從SQlite數據庫獲取對象?
- 18. 從SQLite數據庫獲取對象
- 19. 從存儲在一個對象中的元素獲取數據
- 20. 將核心對象存儲到SQLite數據庫中
- 21. 如何獲取用戶ID並將其存儲到數據庫
- 22. firebase獲取關鍵值並將其存儲在數組中
- 23. 如何創建JSon對象並將數據存儲在其中
- 24. 從光標獲取數據並將其存儲在字符串數組中
- 25. 如何使用MYSQL從數據庫中獲取數據並將其存儲在JavaScript數組中
- 26. 如何將數據存儲在對象中並將該對象存儲在數組中的ios
- 27. 獲取數據庫的常量並將其存儲在緩存中
- 28. 從數據庫獲取並存儲在一個新的數組PHP
- 29. 在數據庫中獲取表並將其存儲在字符串中
- 30. 從REST API獲取數據並將其存儲在HDFS/HBase中
你可以發佈插件的任何例子? – delive