Android 如何将JSONObject转换为类对象?
我需要为我的一个android项目使用gson库将JSONObject转换为Location对象。我不知道该怎么做。有人能帮我吗。提前谢谢 我有一个类似的代码Android 如何将JSONObject转换为类对象?,android,gson,Android,Gson,我需要为我的一个android项目使用gson库将JSONObject转换为Location对象。我不知道该怎么做。有人能帮我吗。提前谢谢 我有一个类似的代码 JSONArray input = new JSONArray(extras.getString("loc_json")); 我想将从JSONArray获取的JSONObject转换为Location类对象。我只是想知道是否有一个函数可以直接执行它 如果我把这个问题框错了,请原谅。因为我没有直接函数,所以我是这样做的 loc_temp
JSONArray input = new JSONArray(extras.getString("loc_json"));
我想将从JSONArray获取的JSONObject转换为Location类对象。我只是想知道是否有一个函数可以直接执行它
如果我把这个问题框错了,请原谅。因为我没有直接函数,所以我是这样做的
loc_temp = (Location) gson.fromJson(input.getJSONObject(i).toString(), Location.class);;
抱歉这个愚蠢的问题。对于GSON,我认为这应该有助于加强您的理解。基本上,解析是这样完成的:
String mJsonString = "...";
JsonParser parser = new JsonParser();
JsonElement mJson = parser.parse(mJsonString);
Gson gson = new Gson();
MyDataObject object = gson.fromJson(mJson, MyDataObject.class);
使用com.google.gson.JsonObject&JsonArray代替org.json* 像这样:
Gson gson = new Gson();
Type typeOfT = new TypeToken<List<Location.class>>(){}.getType();
JsonParser parser = new JsonParser();
JsonObject jo = (JsonObject) parser.parse(jsonStr);
JsonArray ja = jo.getAsJsonArray("memberName");
list = gson.fromJson(ja, typeOfT);
Gson-Gson=new-Gson();
类型typeOfT=newtypetoken(){}.getType();
JsonParser=新的JsonParser();
JsonObject jo=(JsonObject)parser.parse(jsonStr);
JsonArray ja=jo.getAsJsonArray(“成员名”);
list=gson.fromJson(ja,typeOfT);
如果仍要使用org.json.JSONObject:
org.json.JSONObject o;
ObjectMapper m = new ObjectMapper();
MyClass myClass = m.readValue(o.toString(), MyClass.class);
为科特林
val objType = object : TypeToken<MyClass>() {
}.getType()
var myclassObj = gson.fromJson(value,objType)
它应该是“newJSONParser().parse(…)”。。花了几分钟试图找出问题出在哪里ObjectMapper在这里是什么?我猜:com.fasterxml.jackson.databind.ObjectMapper它是如何连接到gson的?
val objectResponse = Gson().fromJson(Gson().toJson(resp), MyClass::class.java)