json中key must be strings, unquoted错误

json中key 必须是 string类型,包括JSONObject和JSONArray(即由一个string对应到array)

否则会抛异常,如标题所示

我之前遇到了这个问题,错在两个地方

1. HashMap<String, Object>
   HashMap对象中 key 使用的是 Integer,所以 JSONObject.fromObject()抛异常,告知key must be strings, 因为 HashMap中的 key 不经过字符串转换,而是直接映射成 json中的 key,这时出现 key 为 Integer,而不是 string

2. 不能使用 toString()方法
   HashMap.toString()将 对象转换成 key=value 形式, 整体成一个字符串,而不是 key-value映射,缺少value

你可能感兴趣的:(String)