2016-10-08 11 views
-1

私は10,000データの配列の配列を持っています。このデータはほとんど変更されず、とにかくアプリで処理できます。それは私が外部のデータベースにこれを格納することは不必要なようですが、それは文字列データなので大型ではないと考えます。Android:アプリを使って配列を保存する

これをアプリでユーザーの携帯に保存する方法はありますか?私は文字列リソースやCSVファイルを考えていました。しかし、これは最速または最良の選択肢のようには見えません。それをデータベースにアップロードするのか、それをデバイスに保存するのかを決めるときに必要なことは何ですか。現在はDynamoDBを使用していますので、多くの属性で配列を検索するのは難しいでしょう。

ご協力いただきありがとうございます。

+1

なぜあなたはsqliteを使用しないでください –

+0

@Sarthak私は決して新しいです感謝は内部的に可能でしたありがとう –

答えて

2

将来データが変更されない場合は、あなたのデータは、それのデータベースに行く将来の変化.....

1

私はStringsを格納して行くだろうとなります場合は、その静的その後string.xmlを

OR

上にデータを置く意味

<resources> 
<string-Array name ="data"> 
    <item> Data 1 </item> 
    <item> Data 2 </item> 
    <item> etc etc </item> 
</string-array> 
</sesources> 

してから、クラス内あなたは、配列を参照しますし、あなたのにその配列を格納しますので、あなたのようなStrings.xmlString-Array

List<String> stringData = new ArrayList<String>(Arrays.asList(getResources().getStringArray(R.array.data))); 

for (String row : stringData){ 
     Log.d("Data", row); 
} 

あなたはFragmentからこれをコーディングしている場合、私はgetActivity().getResources().getStringArray(R.array.data)を使用することをお勧めしたり、Fragmentにコンテキストを渡します。

1

データのサイズ(10,000)を見ると、文字列リソースを使用するのは良いことではありません。また、データは静的であるため、読み取り専用でアクセスされます。だから、ファイルやSqliteを使用する方が良いです。しかし、特定のエントリを見つけるなどのデータに多くのクエリを実行する場合は、SQLiteインデックスを使用することができますので、Sqliteを使用することをお勧めします。 ..

関連する問題