目前我在文件(name.json)中有以下json数组对象.
[{
"name":"ray",
"value":"1"
},
]
Run Code Online (Sandbox Code Playgroud)
现在我想使用java在文件的这个Json数组中再添加一个元素.像这样的东西:
[{
"name":"ray",
"value":"1"
},
{
"name":"john",
"value":"2"
}
]
Run Code Online (Sandbox Code Playgroud)
一种方法是从文件中读取整个数组,将一个元素附加到该数组并将其写回java中的json文件.但这绝对不是完成这项任务的最佳方式.任何人都可以建议任何其他方式吗?
小智 2
尝试这个:
1 - 创建一个具有读/写权限(“rw”)的 RandomAccessFile 对象;
RandomAccessFile randomAccessFile = new RandomAccessFile("/path/to/file.json", "rw");
Run Code Online (Sandbox Code Playgroud)
2 - 将文件光标设置到字符“]”的位置
long pos = randomAccessFile.length();
while (randomAccessFile.length() > 0) {
pos--;
randomAccessFile.seek(pos);
if (randomAccessFile.readByte() == ']') {
randomAccessFile.seek(pos);
break;
}
}
Run Code Online (Sandbox Code Playgroud)
3 - 写入一个逗号(如果不是第一个元素)、新的 json 元素和字符“]”
String jsonElement = "{ ... }";
randomAccessFile.writeBytes("," + jsonElement + "]");
Run Code Online (Sandbox Code Playgroud)
4 - 关闭文件
randomAccessFile.close();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1910 次 |
| 最近记录: |