2012-01-27 6 views
3

私は、Java(目的:Android向けFLOTを):使用してJSON文字列のようなものを生成しようとしているJavaからJSONArrayを正しく生成するには?

{ 
"data": [[1999, 1], [2000, 0.23], [2001, 3], [2002, 4], [2003, 1.3], [2004, 2.5], [2005, 2.0], [2006, 3.1], [2007, 2.9], [2008, 0.9]] 
} 

これを行うために、私はこのようなJSONArrayを使用しています:

JSONArray jsonArray = new JSONArray(); 
jsonArray.put("[1999, 1]"); 
jsonArray.put("[2000, 0.23]"); 
jsonArray.put("[2001, 3]"); 
... 

しかし、私が得る唯一の結果は次のとおりです:

["[1999, 1]","[2000, 0.23]","[2001, 3]",..."[2008, 0.9]"] 

どのように括弧内の引用符を削除できますか?配列の項目を入力できますか?

ありがとうございます!

答えて

5

あなたがやっていることは、配列に文字列を追加することだけです。あなたはストリングを必要としません。ネストされた配列が必要です。だから、ネストされたJSONArrayオブジェクトを操作する必要があります。

JSONArray nested1 = new JSONArray(); 
nested1.put(1999); 
nested1.put(1); 
jsonArray.put(nested1); 

または、simpler

jsonArray.put(new JSONArray(Arrays.asList(1999, 1))); 

または、even simpler

ここでは標準的な方法です

jsonArray.put(Arrays.asList(1999, 1)); 
// or use an int array: 
jsonArray.put(new int[]{1999, 1}); 
+0

どうもありがとう迅速な網羅的な答えのために!これはちょうど素晴らしい作品です! – Thordax

関連する問題