我是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"
}
答案 0 :(得分:0)
您应该使用Gson的特定toString()
方法,而不是使用通用getAsString()
方法。请参阅Gson API文档here。
购买方式,您可能希望使代码更清晰,如下所示:
JsonObject rootObject = new JsonParser().parse(json).getAsJsonObject();
JsonObject carObject = rootObject.getAsJsonObject("Car");
String carName = carObject.get("name").getAsString();