2011-12-14 24 views
5

SDカードからjsonファイルを読み込み、データをスピナーに表示する必要があります。 Androidのファイルからデータを読み取り、そのファイルの内容をスピナーに表示する方法はありますか?SDカードからjsonファイルを読むには

答えて

17

まずSDカードからファイルを読み込み、その後、SDカードからファイルからデータを取得し、そのファイル

ステップ-1 を解析します。 tutorial

ステップ-2 データを解析します。 Androidのドキュメントを1としてHow to parse JSON String

サンプルコード

try { 

      File dir = Environment.getExternalStorageDirectory(); 
      File yourFile = new File(dir, "path/to/the/file/inside/the/sdcard.ext"); 
      FileInputStream stream = new FileInputStream(yourFile); 
      String jString = null; 
      try { 
       FileChannel fc = stream.getChannel(); 
       MappedByteBuffer bb = fc.map(FileChannel.MapMode.READ_ONLY, 0, fc.size()); 
       /* Instead of using default, pass in a decoder. */ 
       jString = Charset.defaultCharset().decode(bb).toString(); 
       } 
       finally { 
       stream.close(); 
       } 


        JSONObject jObject = new JSONObject(jString); 



     } catch (Exception e) {e.printStackTrace();} 
+0

を参照してください、それはさらに、getChannel()が高価なメモリが賢明であると述べています。チャンネルを使用せずにこれを行う方法はありますか? –

+0

マップされたファイルの設定が高価な場合でも、ストリームI/Oと比較した総合的なゲイン(速度)が重要です。 –

+0

ありがとう....それは働いた – Noman

関連する問題