java - 使用Java,如何在数组的开头将一些节点添加到现有的json?
问题描述
下面的代码将“myvalue”字段插入现有 JSON,但在“id”键值对之后,我想在此 JSON 中但在“id”字段之前插入一个值。
String originalJson="{"checkouts":[{"line_items":[{"id":"343f1f49d0ba7752b5ba84e0184384f4"}]}]}";
String modifiedJson= JsonPath.parse(originalJson)
.add("$.checkouts[0].line_items","myValue")
.jsonString();
上述代码的当前输出为:
{"checkouts":[{"line_items":[{"id":"343f1f49d0ba7752b5ba84e0184384f4"},"myValue"]}]}
但我想要这样的输出:
{"checkouts":[{"line_items":["myValue",{"id":"343f1f49d0ba7752b5ba84e0184384f4"}]}]}
解决方案
你可以这样做:
String originalJson="{\"checkouts\":[{\"line_items\":[{\"id\":\"343f1f49d0ba7752b5ba84e0184384f4\"}]}]}";
DocumentContext json = JsonPath.parse(originalJson);
JSONArray array = json.read("$.checkouts[0].line_items");
array.add(0, "myValue");
String modifiedJson= json
.set("$.checkouts[0].line_items",array)
.jsonString();
推荐阅读
- oracle - Oracle 触发器上的 Oracle APEX 用户
- c# - 检查 SQL 数据源的大小
- r - 如何显示列的总数和列的百分比
- mongodb - 如何创建多个mongos路由器服务器实例?
- r - 如何处理数据集中的组合和拆分变量
- python - 使用 .png 图像数字化地图并绘制一个已知纬度/经度的圆圈。通过在python中输入半径值作为中心
- google-apps-script - 如何保持两个单独的电子表格同步,但只替换更新的值?
- xamarin - XF Binding .. 属性未找到但仅适用于我的 Android 应用程序而不适用于 iOS
- python - Sonarqube + Jenkins:python 覆盖率报告 => 删除源中的行后行超出范围
- ios - 我的 Flutter/Firebase 应用显示尚未配置任何应用