-3

何日も解決できない問題があります。

文字列行の入力は "{"name":"John", "Hobby":"Cycle"}" で、PHP サーバーから JSON で送信されます

Android アプリケーションのコード

public void testFn()
{
    try {
        while ((line = reader.readLine()) != null) {
            String tmp = gson.toJson(line.toString());
            JSONObject jobj = (JSONObject)new JSONParser().parse(tmp);
            sb.append(jobj.get(1).toString() + "\n");
        }
    }catch ....
}

受け取った文字列を変換して JSONObject / JSONArray に変換し、それを取得したり、文字列形式として TextView に表示したりしたいと考えていました。しかし、Java.StringからJSON.simple.JSONObjectへのCastExceptionのエラーが発生し続けます..誰かがこれについて私を啓発してくれることを願っています

4

3 に答える 3

0
class MyJsonObject{
  private String name;
  private String Hobby;
  MyJsonObject() {

  }
}

MyJsonObject obj = new MyJsonObject();
Gson gson = new Gson();
String json = gson.toJson(obj);  

(逆シリアル化)

MyJsonObject obj2 = gson.fromJson(json, MyJsonObject.class);  
于 2013-06-20T09:56:57.187 に答える
0

基本的に、ここでコードを編集しました

String line = "{"name":"John","Hobby":"Cycle"}";
Object obj=parser.parse(line);
JSONArray array=(JSONArray)obj;
JSONObject obj2 = (JSONObject)array.get(0);
System.out.println(obj2.get("name").toString());

すみません、方法を見つけました。

Output:
John
于 2013-06-21T03:02:57.440 に答える