2012-12-11 83 views
0

我在Android中创建一个SQLite数据库,其中我必须在其中存储40k个单词。我从q txt文件中获得单词。在SQLite数据库中存储单词

我将单词首先存储在列表中,然后从列表存储到数据库。但是,当我在表格中存储单词并从中检索时,我只能获得20k个单词。表格的行数也是20k,但我保存了40k字。

public void createTable(SQLiteDatabase db, ArrayList<String> words) 
{ 
    int i=0; 


     db.execSQL(DATABASE_CREATE); 

     System.out.println("created table going further"); 

     for(i=0; i < words.size();i++) 
     { 
      String[] pair=words.get(i).split(","); 

      insertWord(pair[0].trim(), Integer.parseInt(pair[1].trim()), db); 
      System.out.println(i++);    
     } 
     System.out.println("in database "+i+" words are there in db");  
} 

我不知道这是怎么回事。

+0

?你确定你已经保存了所有的40k字吗?用更少的单词(如10)会发生什么?哪些词缺失(随机,最后,所有第一,每隔一个)? – njzk2

回答

4

您在打印语句递增i两次,一个在了,一个,你有uniqness限制其更改为

for(i=0; i < words.size();i++) 
    { 
     String[] pair=words.get(i).split(","); 

     insertWord(pair[0].trim(), Integer.parseInt(pair[1].trim()), db); 
     System.out.println(i);    
    } 
+0

thanx男人。这是多么愚蠢的错误。 – muditagarwal88

+1

很高兴帮助,不要忘记接受答案:) – Nermeen