2012-02-21 16 views
2

アンドロイドリソースの辞書を使用する方法はありますか?私はString.xmlファイルで辞書や検索可能なファイルについて何も見つけることができませんでした。私が必要としない多くのフィールドがあります。辞書in android resources

編集:C#とVisual Studioではリソースや文字列やintに辞書を追加することができますが、リソースに辞書を追加するオプションが見つかりませんでした。文字列と文字列配列または整数のみが利用可能ですアンドロイドのリソース。

+0

質問が不明です – jeet

+0

@ jitendra sharma:質問を編集しました。 – Daniel

答えて

2

このようなリソースタイプはありません。 res/raw /に任意のファイルを置いてHashMapに手動でインポートする必要があります。

+0

res/rawでファイルにアクセスするにはどうしたらいいですか? – Daniel

+1

未処理のInputStreamでこれらのリソースを開くには、リソースID(R.raw.filename)を使用してResources.openRawResource()を呼び出します。 (http://developer.android.com/guide/topics/resources/providing-resources.html) – drakyoko

6

多分ここに答えることが遅く、それは `sが、あなたはこのようなものを使用することができます

のres /ここでのstrings.xml

<string-array name="tags"> 
    <item>KEY_A:Some string value 1</item> 
    <item>KEY_B:Some string value 2</item> 
    <item>KEY_C:Some string value 3</item> 
</string-array> 

、 ":" 記号は区切り文字を表しますが文字列配列のキーと値のペアの間。

そして、どこかのコード(例えばのonCreate()):

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    String[] tags = getResources().getStringArray(R.array.tags); 
    for(String tag : tags) { 
     String[] pair = tag.split(":"); 

     String key = pair[0]; 
     String value = pair[1]; 

     // do whatever you want with key and value 
    } 
} 

あなたは解像度を使用するより良い、より複雑なデータのための単純なデータを持っている場合は、このアプローチは良いです/生上記の他の人に説明されているように、jsonオブジェクトを含むファイル