2

私は JSON 出力が初めてで、Gson パーサーを使用して出力を解析しています。

出力から車の名前とトラックのコードが欲しいだけです。解析すると、出力として引用符付きの車の名前が得られます。文字列置換で引用符を削除します。値を正しく解析していますか?

JsonElement jelement = new JsonParser().parse(json);
JsonObject carobject= jelement.getAsJsonObject();
carobject= carobject.getAsJsonObject("Car");
String car = carobject.get("name").toString();
out.println("Car Name:"+car);

JSON 出力:

{
        "messages": [
            "For a complete list use showall=true to display 'intersection' element in the Mask"
        ],
        "Mask": {
            "NJS": "120950170151015",
            "section": [
                {
                    "NJS": "120950170151015"
                },
                {
                    "NJS": "120950170151016"
                },
                {
                    "NJS": "120950170151019"
                }
            ]
        },
        "Car": {
            "NJS": "12095",
            "name": "Audi"
        },
        "Truck": {
            "NJS": "12",
            "code": "TL",
            "name": "TLTRUCK"
        },
        "status": "OK",
        "executionTime": "13"
    }
4

1 に答える 1

0

汎用toString()メソッドを使用する代わりに、Gson 固有のgetAsString()メソッドを使用する必要があります。こちらの Gson API ドキュメントを参照してください

次のように、コードをより明確にすることができます。

JsonObject rootObject = new JsonParser().parse(json).getAsJsonObject();
JsonObject carObject = rootObject.getAsJsonObject("Car");
String carName = carObject.get("name").getAsString();
于 2013-09-19T08:50:03.137 に答える