我有一个json字符串,其中包含这样的数据:
description: { "en" : "english desc", "es": "spanish description" }
此字段在我的Item类中,但是它是一个字符串:
class Item
private String description;
我正在使用GSON解析此Json。我收到错误消息,因为Json字符串中的数据不是字符串。这是一个JSON对象。
我应该给一个默认语言的参数(例如en),它应该像这样解析:
description = "english desc"
我怎样才能做到这一点?
Description应该是一个复合对象,其中包含根据您输入的字符串的en和es字符串字段。参考例如
import com.google.gson.Gson;
public class Demo1 {
class Item {
Description description;
public Description getDescription() {
return description;
}
public void setDescription(Description description) {
this.description = description;
}
@Override
public String toString() {
return "Item [" + description + "]";
}
class Description {
String en;
String es;
public String getEn() {
return en;
}
public void setEn(String en) {
this.en = en;
}
public String getEs() {
return es;
}
public void setEs(String es) {
this.es = es;
}
@Override
public String toString() {
return "Description [en=" + en + ", es=" + es + "]";
}
}
}
public static void main(final String[] args) {
String json = "{ description: { \"en\" : \"english desc\", \"es\": \"spanish description\" } }";
Gson gson = new Gson();
Item i = gson.fromJson(json, Item.class);
System.out.println("item:" + i);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句