我使用Gson创建字符串: new Gson.toJson(englishResult); englishResult是List>类型。 但结果如下:
[{"name":"en3","value":234},{"name":"en4","value":135},{"name":"en1","value":335},{"name":"en2","value":310},{"name":"en5","value":1548}]
然后我调用js方法抛出错误
未捕获的SyntaxError:意外的令牌&
我搜索goole,它告诉我& quot是好json,因为我可以包含转义,但为什么js抛出错误?怎么解决? 请告诉我一些建议,非常感谢
我的服务器代码是:
public static void pieTestWithData(){
Map<String, Integer> result = getChineseResultMap();
List<Map<String, Object>> englishResult = getFormatteredPieData();
renderArgs.put("resultData", getJson(englishResult));
render();
}
private static String getJson(List<Map<String, Object>> englishResult) {
Gson gson = new GsonBuilder()
.disableHtmlEscaping()
.create();
return gson.toJson(englishResult);
}
答案 0 :(得分:0)
(因为stackoverflow注释限制为264个字符而在此处发布)
@wangyiran
我无法重现。这是我的测试:
@Test
public void testMe() {
List<Map<String, Object>> englishResult = new ArrayList<>();
Toto toto = new Toto();
toto.setName("Toto it's me");
Map<String, Object> m = new HashMap<String, Object>();
m.put("mapKey", toto);
englishResult.add(m);
Gson gson = new Gson();
String jsonEnglishResult = gson.toJson(englishResult);
System.out.println(jsonEnglishResult);
}
然后
[{"mapKey":{"name":"Toto it\u0027s me"}}]
测试输出:
2.3.1
我正在使用Gson版本FragmentManager manager = getFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.replace(R.id.bodyfragment, new AnotherFragment());
transaction.commit();
。