2012-01-10 59 views
2

在我的應用程序中,我在sqlite數據庫中創建了很多表,但是在一個表中包含超過100k行我使用http連接從服務器獲取數據。獲取這種類型的許多記錄會給我帶來更多時間,所以爲了避免這個問題,我想通過PC連接我的平板電腦,並且希望將txt文件(具有插入語句)放置在平板電腦中。我怎樣才能從android中的文本文件中插入數據sql123表

現在如何訪問我的應用程序中的txt文件,以及如何使用該txt文件在我的表格中插入數據,以及將該文本複製到哪個位置以從我的應用程序訪問它。

我的數據庫文件的大小也是273 MB,所以我不認爲這是可能將其放置在資產文件夾

回答

5

您可以將文件複製到assets文件夾

代碼示例:

private void initDatabaseData(SQLiteDatabase db) { 
    BufferedReader br = null; 
    try { 
     br = new BufferedReader(new InputStreamReader(context.getAssets().open(file_name)), 1024 * 4); 
     String line = null; 
     db.beginTransaction(); 
     while ((line = br.readLine()) != null) { 
      db.execSQL(line); 
     } 
     db.setTransactionSuccessful(); 
    } catch (IOException e) { 
     Log.e(LOG_TAG, "read database init file error"); 
    } finally { 
     db.endTransaction(); 
     if (br != null) { 
      try { 
       br.close(); 
      } catch (IOException e) { 
       Log.e(LOG_TAG, "buffer reader close error"); 
      } 
     } 
    } 
} 

上面的代碼需要的txt文件的每一行是一個SQL語句

+0

恐怕我不明白怎麼使用這個,我怎樣才能把它插入我的表 – 2012-01-10 10:36:37

+0

而且我的db文件大小是273 MB – 2012-01-10 11:00:49

相關問題