【发布时间】:2012-11-09 11:24:33
【问题描述】:
String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'270B', 'YUDE':'280T'}";
这是我的 json 字符串。我如何将它解析为 GsonBuilder() 以便我将对象取回?我尝试了一些想法,但没有一个有效。
【问题讨论】:
String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'270B', 'YUDE':'280T'}";
这是我的 json 字符串。我如何将它解析为 GsonBuilder() 以便我将对象取回?我尝试了一些想法,但没有一个有效。
【问题讨论】:
public class YourObject {
private String appname;
private String Version;
private String UUID;
private String WWXY;
private String ABCD;
private String YUDE;
//getters/setters
}
解析为对象
YourObject parsed = new Gson().fromJson(jsons, YourObject.class);
或
YourObject parsed = new GsonBuilder().create().fromJson(jsons, YourObject.class);
小测试
String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'270B', 'YUDE':'280T'}";
YourObject parsed = new Gson().fromJson(jsons, YourObject.class);
效果很好
编辑
在这种情况下使用JsonParser
JsonObject object = new JsonParser().parse(jsons).getAsJsonObject();
object.get("appname"); // application
object.get("Version"); // 0.1.0
【讨论】:
JSON 对字符串使用双引号 ("),而不是单引号,因此您拥有的 JSON 无效。这可能是您在将其转换为对象时遇到任何问题的原因。
【讨论】: