-1
を使用して:JSON私はこのJSONの直列化復元してトラブルを抱えているGson
[{"categorium":
{"created_at":"2011-06-09T08:57:41Z","c1":"rete stradale","updated_at":"2011-06-09T08:57:41Z","id":1}},
{"categorium":{"created_at":"2011-06-09T13:50:29Z","c1":"servizi pubblici","updated_at":"2011-06-09T13:50:29Z","id":2}},
{"categorium":{"created_at":"2011-06-09T13:50:37Z","c1":"illuminazione","updated_at":"2011-06-09T13:50:37Z","id":3}},
{"categorium":{"created_at":"2011-06-09T13:50:46Z","c1":"inquinamento","updated_at":"2011-06-09T13:50:46Z","id":4}}
]
は、どのように私は、すべての「C1」は属性を外挿することができますので、私はそれらの文字列配列を返すことができますか?
* UPDATE:SOLUTION *
public class getElements {
String [] getEl (String url) throws ClientProtocolException, IOException {
Categoria c = null;
Categoria[] cArray = null;
String [] c1Array = null;
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet("http://10.0.2.2:3000/"+url);
HttpResponse response = client.execute(request);
HttpEntity entity = response.getEntity();
String stringa = "{\"categorium\":{\"created_at\":\"2011-06-09T08:57:41Z\",\"c1\":\"rete stradale\",\"updated_at\":\"2011-06-09T08:57:41Z\",\"id\":1}}";
Gson json=new Gson();
try{
cArray=json.fromJson(stringa, Categoria[].class);
Log.i("ELEMENTO", ""+cArray);
}catch(JsonParseException e){
Log.i("error","JsonParseException");
}
c1Array = new String[cArray.length];
for (int i=0; i<cArray.length; i++) {
c1Array[i] = cArray[i].c1;
}
return c1Array;
}
}
Categoriumクラス:すべてのC1のを取得するために、次に
Categorium[] cArray = null;
cArray = gson.fromJson(stringa, Categorium[].class);
:
public class Categoria {
public String created_at;
public String c1;
public String updated_at;
public int id;
public Categoria() {
this.created_at = "";
this.c1="";
this.updated_at = "";
this.id = 0;
}
}
Categoriaオブジェクトをすべて読み取ってから、単純なループでc1要素の配列を手動で作成できないのはなぜですか? – bezmax
どうすればそれらを読むことができますか?私が書いたコードで、私は1つだけのc1を取る、そうですか?ところで... logcatは私にJsonParseExceptionを与えます: "entity.toString"はJsonを文字列型で取得する正しい方法ですか? –
ああ、今私はそれを得た:) – bezmax