1

私はこのJsonステートメントを持っています:

{name=Adam Schmidt, id=43}

このコードを試して名前の値を抽出したいのですが、うまくいきませんでした

// parse json data
        try {
            JSONObject userObject = new JSONObject(result);
            userName = userObject.getString("name");
                    tvName.setText(userName);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
4

2 に答える 2

2

あなたのステートメントは有効なjsonではありません。有効な json のサンプルを次に示します。

{\"name\":\"Adam Schmidt\", \"id\":43} 

更新:数値の場合、引用符はありません

于 2013-09-20T18:36:44.880 に答える
0

GSONを使用します。超簡単。

JSON 構造を表すクラスを宣言します。

public class Person {
  private String name;
  private int id;

  public String getName() {
    return name;
  }

  public int getId() {
    return id;
  }
}

次に、次のことができます。

String json = "{\"name\":\"Adam Schmidt\", \"id\":43}";
String userName = new Gson().fromJson(json, Person.class).getName();
tvName.setText(userName);

getこれは、コード全体でさまざまなメソッドを使用してランダムにチャンクを解析するよりもはるかに優れています。さらに、オブジェクト指向コードで渡して使用するための素敵なオブジェクトが得られます。

于 2013-09-20T23:53:40.780 に答える