fastjson如何遍历所有记录和记录的所有字段

doloopcn 2022-06-21 01:59:51

JSON的字符串是这样的:

[{"ID":1,"Name","A"},{"ID":1,"Name","B"}]

如何能做到这样显示结果:

记录1

ID,1

Name,A

记录2

ID,2

Name,B

JAVA水平十分菜,先请大虾见谅,谢谢

...全文
197 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
末位大师兄 2022-06-21
  • 打赏
  • 举报
回复

肯定是哪里写错了
String Jstr = "[{"ID":1,"Name":"A"},{"ID":1,"Name":"B"}]";
JSONArray jsonArray = JSON.parseArray(Jstr);
jsonObject.size() 是 2
然后你的提问中 [{"ID":1,"Name","A"},{"ID":1,"Name","B"}] name后边应该是 冒号 不是逗号 ,不然就不是JSON了 是转换不过去的。

doloopcn 2022-06-21
  • 举报
回复
@末位大师兄 可能是因为我的JSON是来自DELPHI的DATASNAP所以我用了以下方法终于解决: /** * 遍历所有记录及其所有字段的值 * @param joStr ---DELPHI DataSnap返回的报文 * @param jsonArrayName ---DELPHI DataSnap返回的报文以result命名 */ public static void egodicDataSnapJsonArray(String joStr,String jsonArrayName) { JSONObject jsonObject = JSONObject.parseObject(joStr); // 遍历数组。遍历jsonArrayName信息。 JSONArray jsonArray = jsonObject.getJSONArray(jsonArrayName); System.out.println("JSONArray报文:"+jsonArray.toString()); if(null!=jsonArray){ //jsonArray.set(0,"--------"+jsonArray.get(0)); System.out.println("******共有<"+jsonArray.size()+">个表记录******"); for(Iterator iterator=jsonArray.iterator();iterator.hasNext();){ System.out.println(iterator.next()); } } JSONArray jsonArray1=JSONArray.parseArray(jsonArray.get(0).toString()); System.out.println("******共有<"+jsonArray1.size()+">条记录******"); int FieldCount=0; for (int i = 0; i < jsonArray1.size(); i++) { System.out.println("******遍历第" + (i+1) + "条记录******"); System.out.println(jsonArray1.get(i)); JSONObject curRecord = (JSONObject) jsonArray1.get(i); for (Map.Entry<String, Object> entry : curRecord.entrySet()) { System.out.println(entry.getKey().toString() + " : " + entry.getValue().toString()); if (i==0){ FieldCount++; } } } System.out.println("******共有<"+FieldCount+">个字段******"); }
doloopcn 2022-06-21
  • 举报
回复
@doloopcn 也就是说要进行两次pasrseArray 也是醉了 谢谢
doloopcn 2022-06-21
  • 打赏
  • 举报
回复

我用以下代码后,为什么Array.Size是1,而不是2呢
JSONArray jsonArray=JSONArray.parseArray(jStr);
System.out.println(jsonArray.size);

51,412

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧