我正在使用org.json中的JSONObject。*
我需要使用像这样的字符串字段构造JSONObject
field:"englishletters123\u1234\u3456"//UTF-8 encoding
所以,我正在做这个
myJSONObject.put("field", myString);
但不是这样,我会用流利的(非英语)字母而不是UTF-8表示来获取对象。
String newString = new String(oldString.getBytes(...), ...);
myJSONObject.put("field", newString);
不起作用
有没有办法进行此类操作?也许我应该使用其他一些库?
答案 0 :(得分:0)
我对JSON序列化库并不是很熟悉,但是自从你问到,谷歌的GSON库是惊人的。它通过反射处理几乎所有内容,就像创建一个符合您试图创建的JSON文本描述的对象一样简单。
例如:
public class Thing{
public String field = "whatever you want";
}
Gson gson = new Gson();
String jsonString = gson.toJson(new Thing());
反序列化也很简单:
Thing t = gson.fromJson(jsonString, Thing.class);
当然,图书馆还有更多内容,但这是它的基础。