2016-05-31 75 views
0

我正在開發一個應用程序,安裝後必須將大量數據(大約5 Mb)插入到數據庫中。但在開始插入數據之前,第一個應用程序必須在某處獲取這些數據。爲此,我創建了一個將所有數據存儲到數組中的類。下面我舉一個例子:Android。如何正確存儲數據庫的數據?

public class Data { 
    public static String[] table_1 = {"text1","text2","text3","text4"..."text500"}; 
    public static String[] table_2 = {"text1","text2","text3","text4"..."text356"}; 
    public static String[] table_3 = {"text1","text2","text3","text4"..."text485"}; 
.......................... 
    public static String[] table_35 = {"text1","text2","text3","text4"..."text267"}; 
} 

onCreate(),通過應用這些陣列和將數據插入到數據庫中循環。但在這裏我遇到的問題叫:錯誤:代碼太大。我知道導致問題的原因是Data類,因爲代碼被限制爲64K字節。我想在兩個班級之間分開數據,但我認爲它不是一個好主意。

所以,我的問題是如何正確地存儲數據庫的數據。你在這種情況下可以提供什麼建議?

+0

您是否考慮將數據寫入CSV文件,並實現讀取數據並將數據存儲爲應用程序「第一次運行」的一部分? – alfasin

+0

是的,我考慮過它,但我怎麼會決定桌子的長度。有了數組,我可以獲得數組的長度,從而控制我的插入,當第一個數組完成時,我開始從第二個數組插入第二個表數據,依此類推。 – gigs

+0

您可以使用多個csv/xml/json文件來讀取數據,以防出於某種原因需要進行分區(我不明白爲什麼)。 – alfasin

回答

0

您可以從XML文件加載該內容,並且一旦加載完成插入語句。

0

兩種方式:

  1. 負載從互聯網內容,並將其存儲在本地SQLite數據庫。

  2. 創建一個文件例如帶有JSON字符串的XML或Txt文件。將其放入APK中並在應用程序中加載該文件並保留文本。但也許不需要在數據庫中保留該文本,因爲您也可以將xml文件用作靜態數據存儲。