1

私はjsonwebserviceに11個のアイテムを持っています。詳細をsqliteに保存し、sqliteから表示しています。そのためにsqliteのIDとWebサービスのTAG_IDを確認する必要があります。idが等しくない場合は、i sqliteで詳細を更新し、使用しているものを表示する必要があります

   if(data_exist!=bookProduct.length()){
               Log.i("in update","m here");
               Cursor cursors = getRawEvents("select id from bcuk_book");
               try{
                     for (int i = 0; i < bookProduct.length(); i++) {
                     JSONObject c = bookProduct.getJSONObject(i);
                     String Bid = c.getString(TAG_ID);
                     ArrayList<String> mapId = new ArrayList<String>();
                        while(cursors.moveToNext())
                        {
                                Log.e("cursors",cursors.getString(0));
                                Log.i(Bid,Bid);
                                String csv = cursors.getString(0);
                                if(!cursors.getString(cursors.getColumnIndex(TAG_ID)).equalsIgnoreCase(c.getString(TAG_ID)))
                                        {
                                            Log.e("fas",Bid);
                                        }

                                        else
                                        {
                                            Log.e("enter","if case");
                                            cursors.moveToPosition(i);
                                        }
                                    }
                                    mapId.add(TAG_ID);
                                    Log.e(Bid,Bid);            
                             }

                     }

ここでの問題は、iamがforループでTAG_IDを1回だけ取得できることですが、whileはすべてのアイテムを取得するため、比較はすべてのアイテムを比較するのではなく、1回だけ行われます。どうすればこれにアプローチできますか?

4

2 に答える 2

1

cursors.moveToFirst(); を呼び出して解決しました。while ループの後

于 2012-12-17T11:47:35.997 に答える
0
if (cursor.moveToFirst()){
    do {
       Log.v("mylog", cursor.getString(0) + "," + cursor.getString(1) + "," + cursor.getString(2));
    }
    while(cursor.moveToNext());
}

このように使う

于 2012-12-17T11:44:02.303 に答える