Android sqlite cursor的遍歷實(shí)例詳解
查詢并獲得了cursor對(duì)象后,用while(corsor.moveToNext()){}遍歷,當(dāng)corsor.moveToNext()方法調(diào)用,如果發(fā)現(xiàn)沒有對(duì)象,會(huì)返回false
public List<MMImage> getAll() {List<MMImage> list = new ArrayList<MMImage>();Cursor c = null;try { c = database.query(TABLE, null, null, null, null, null, null); while (c.moveToNext()) {MMImage mmImage = getMMImageFromCursor(c);list.add(mmImage); }} catch (Exception e) { e.printStackTrace();} finally { if (c != null) {c.close(); }}return list; }
知識(shí)點(diǎn)內(nèi)容擴(kuò)展:
寫android的時(shí)候,涉及到sqlite的知識(shí),所以自己想搞一個(gè)Demo學(xué)習(xí)一下,看了相關(guān)的教程和幫助文檔,然后開始動(dòng)手寫自己的程序
//1.獲取SQLiteDatabase的對(duì)象SQliteDataBase sqlite = SQliteDatabase.openOrCreateDatabase(new File(Environment.getExternalStorageDirectory() + 'testDB'),null);//2.向數(shù)據(jù)庫(kù)中存入數(shù)據(jù)sqlite.execSQL('create table student(id varchar2(10),name varchar2(20),sex varchar2(2)');sqlite.execSQL('insert into student values(?,?,?)', new String[] {'2013111111', 'Tom', 'M' });//3.從sqlite中讀取數(shù)據(jù)Cursor cursor = sqlite.rawQuery('select * from student', null);//輸出列名for (int i = 0; i < cursor.getColumnCount(); i++) { textView.append(cursor.getColumnName(i) + ’t’);}textView.append('n');//開始讀取其中的數(shù)據(jù)if (cursor.moveToFirst()) { do {textView.append(cursor.getString(0) + ’t’ + cursor.getString(1) + ’t’ + cursor.getString(2) + ’n’); } while (cursor.moveToNext());}
看起了很簡(jiǎn)單,但是我當(dāng)時(shí)在使用cursor的時(shí)候忘了定位cursor,因?yàn)樵诓樵冎蠓祷氐氖且粋€(gè)結(jié)果集,也就是一張二維表,如果我們直接調(diào)用getString(int ColumnIndex)的話,就會(huì)報(bào)錯(cuò),因?yàn)楣鈽?biāo)不能夠確定你要返回哪一行的數(shù)據(jù),從而我們?cè)谑褂肅ursor的時(shí)候,注意定位光標(biāo)。
以上就是Android sqlite cursor的遍歷實(shí)例詳解的詳細(xì)內(nèi)容,更多關(guān)于Android sqlite cursor的遍歷的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. ASP.NET Core自定義中間件的方式詳解2. 《CSS3實(shí)戰(zhàn)》筆記--漸變?cè)O(shè)計(jì)(一)3. 用xslt+css讓RSS顯示的跟網(wǎng)頁(yè)一樣漂亮4. ASP.NET泛型三之使用協(xié)變和逆變實(shí)現(xiàn)類型轉(zhuǎn)換5. 測(cè)試模式 - XSL教程 - 56. 讓chatgpt將html中的圖片轉(zhuǎn)為base64方法示例7. html5手機(jī)觸屏touch事件介紹8. CSS3實(shí)現(xiàn)動(dòng)態(tài)翻牌效果 仿百度貼吧3D翻牌一次動(dòng)畫特效9. JSP的Cookie在登錄中的使用10. .NET擴(kuò)展方法使用實(shí)例詳解
