在logcat中显示每一行

时间:2013-12-12 08:27:52

标签: android sqlite logcat

我正在学习使用android和sqlite但是从数据库中读取信息时遇到了一些麻烦。

我从数据库中检索信息,但它在logcat中只有一行

 public List<WedstrijdenGeschiedenis> getAllWedstrijden() {
        List<WedstrijdenGeschiedenis> wedstrijden = new LinkedList<WedstrijdenGeschiedenis>();

        // 1. build the query
        String query = "SELECT  * FROM " + TABLE_WEDSTRIJD;

        // 2. get reference to writable DB
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor cursor = db.rawQuery(query, null);

        // 3. go over each row, build wedstrijd and add it to list
        WedstrijdenGeschiedenis wedstrijd = null;
        if (cursor.moveToFirst()) {
            do {
                wedstrijd = new WedstrijdenGeschiedenis();
                wedstrijd.setId(Integer.parseInt(cursor.getString(0)));
                wedstrijd.setThuis(cursor.getString(2));
                wedstrijd.setBezoeker(cursor.getString(3));
                wedstrijd.setDatum(cursor.getString(1));

                // Add wedstrijd to wedstrijden
                wedstrijden.add(wedstrijd);
            } while (cursor.moveToNext());
        }

        Log.d("Alle wedstrijden in DB:", wedstrijden.toString());

        // return wedstrijden
        return wedstrijden;
    }

我在logcat中看到的是一个标签(DB中的Alle wedstrijden),其中包含以下信息:

  

12-12 09:22:22.192:D / Alle wedstrijden in DB:(21506):[Wedstrijd   [id = 3,datum = null,thuis = 99,Bezoekers = 47],Wedstrijd [id = 4,   datum = null,thuis = 99,Bezoekers = 47],Wedstrijd [id = 5,datum = null,   thuis = 1,Bezoekers = 2],Wedstrijd [id = 6,datum = null,thuis = 3,   Bezoekers = 4],Wedstrijd [id = 7,datum = null,thuis = Learn Android App   发展,Bezoekers = Wallace Jackson],Wedstrijd [id = 8,datum = 3,   thuis = 1,Bezoekers = 2],Wedstrijd [id = 9,datum = Wallace Jackson,   thuis = datum,Bezoekers =学习Android应用程序开发],Wedstrijd   [id = 10,datum = Wallace Jackson,thuis = datum,Bezoekers = Learn Android   应用程序开发]]

但我想看到的是db中的每一行作为单独的标记,如下所示:

  

标签:Wedstrijd id 3

     

Text:datum,thuis,bezoekers

那么如何为每行创建一个Log.d?

1 个答案:

答案 0 :(得分:0)

所以在你的while循环中写日志就像这样:

    if (cursor.moveToFirst()) {
                do {
                    wedstrijd = new WedstrijdenGeschiedenis();
                    wedstrijd.setId(Integer.parseInt(cursor.getString(0)));
       Log.d("ID:", String.valueOf(Integer.parseInt(cursor.getString(0))));
                    wedstrijd.setThuis(cursor.getString(2));
 Log.d("Thuis:", cursor.getString(2));
                    wedstrijd.setBezoeker(cursor.getString(3));
                    wedstrijd.setDatum(cursor.getString(1));

                    // Add wedstrijd to wedstrijden
                    wedstrijden.add(wedstrijd);
                } while (cursor.moveToNext());
            }