以下是我正在尝试解析的 HashMap:
HashMap map = new HashMap();
map.put("bowser", "b=mozilla");
map.put("car", "car=Ford");
map.put("model","model=Mustang");
map.put("Year", 2014);
map.put("dealer", "Dealer=AKHI");
我先尝试了Gson,然后又用Jackson,但它们都有一个共同的问题。它们将“=”解析为“\u003d”。
ObjectMapper mapper = new ObjectMapper();
try {
String json = mapper.writeValueAsString(map);
System.out.println("---------------------Parsed HashMap---------------------------:"+json);
}
catch (JsonGenerationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (JsonMappingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我得到的输出是:
---------------------解析HashMap---------------------------: {"dealer":"Dealer\u003dAKHI","car":"car\u003dFord","Year":2014,"model":"model\u003dMustang","bowser":"b\u003dmozilla"}
我看了几篇其他博客,发现API中存在故障,但我们是否可以通过其他方法在此处修复它。
Jackson
2.2.2 并且它序列化得很好:{"dealer":"Dealer=AKHI","car":"car=Ford","Year":2014,"model":"model=Mustang","bowser":"b=mozilla"}
。 - Michał Ziober