如何在运行时从Java接口向json数组添加元素
我想在运行时从JavaGUI向JSON数组添加元素 但每次在JSON文件中创建新数组时 要输入数据,请使用Java GUI:如何在运行时从Java接口向json数组添加元素,java,json,append,Java,Json,Append,我想在运行时从JavaGUI向JSON数组添加元素 但每次在JSON文件中创建新数组时 要输入数据,请使用Java GUI: String _itemType = txtItemType.getText(); int _itemQuantity = Integer.parseInt(txtItemQuantity.getText()); JSONWriteExample obj = new JSONWriteExample(_itemType, _itemQuantity); obj.jsonP
String _itemType = txtItemType.getText();
int _itemQuantity = Integer.parseInt(txtItemQuantity.getText());
JSONWriteExample obj = new JSONWriteExample(_itemType, _itemQuantity);
obj.jsonParse();
JSON:
我希望输出如下:
{
"Items":[
{
"Item Type":"TV",
"Quantity":3
},
{
"Item Type":"phone",
"Quantity":3
}
]
}
但每次都会创建新阵列,如下所示:
{
"Items":[
{
"Item Type":"TV",
"Quantity":3
}
]
}{
"Items":[
{
"Item Type":"phone",
"Quantity":3
}
]
}
正如@fabian在评论中提到的,您应该首先解析文件内容,修改并覆盖文件。以下是如何实现该目标的示例代码: 首先,我不知道您使用的是什么json库,但我强烈建议您使用以下内容:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version>
</dependency>
json文件如下所示:
{
"items": [
{
"type": "TV",
"quantity": 3
},
{
"type": "TV",
"quantity": 3
},
{
"type": "phone",
"quantity": 3
}
]
}
正如@fabian在评论中提到的,您应该首先解析文件内容,修改并覆盖文件。以下是如何实现该目标的示例代码: 首先,我不知道您使用的是什么json库,但我强烈建议您使用以下内容:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.9.8</version>
</dependency>
json文件如下所示:
{
"items": [
{
"type": "TV",
"quantity": 3
},
{
"type": "TV",
"quantity": 3
},
{
"type": "phone",
"quantity": 3
}
]
}
您只需将json对象附加到文本文件的末尾。如果要解决此问题,您需要读取文件内容,修改它并覆盖整个文件(除非您想确定如何覆盖文件末尾的部分以实现此结果,这更复杂,更难维护)。您只需将json对象附加到文本文件的末尾。如果要解决此问题,您需要读取文件内容,修改它并覆盖整个文件(除非您想确定如何覆盖文件末尾的部分以实现此结果,这更复杂,更难维护)。
{
"items": [
{
"type": "TV",
"quantity": 3
},
{
"type": "TV",
"quantity": 3
},
{
"type": "phone",
"quantity": 3
}
]
}