首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Java JSON 構建技巧:正確嵌套 JSONArray 避免字符串化導致的雙引號轉義

     編輯:程式設計疑難解答

錯誤做法

map.put("childNodes", "[" + hmap() + "]"); // 字符串拼接,產生雙引號轉義
json.put("childNodes", "[" + jsonArray.toString().replace("\"", "'") + "]"); // 手動替換,非標準

正確做法:直接操作 JSONArray

JSONObject root = new JSONObject();
root.put("id", "root");
root.put("text", "根節點");

JSONArray children = new JSONArray();
JSONObject child = new JSONObject();
child.put("id", "org1");
child.put("text", "軟件");
child.put("showCheck", true);
children.put(child);

root.put("childNodes", children); // 直接放入 JSONArray,序列化時自動生成正確結構

String jsonStr = root.toString(); // {"id":"root","text":"根節點","childNodes":[{"id":"org1","text":"軟件","showCheck":true}]}

Gson 等效

Gson gson = new Gson();
Map<String, Object> map = new HashMap<>();
map.put("childNodes", List.of(Map.of("id","org1","text","軟件","showCheck",true)));
String json = gson.toJson(map);
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved