我正在尝试找到一种将json对象附加到json文件(简单的方法:具有多个json对象的json数组)的有效方法,但是我发现的解决方案(包括我的解决方案)正在重写该文件。 这是我尝试过的代码:
json_hist是来自现有json文件的数据 json_data是我需要附加的数据
public static void appendjson( String json_data , String json_hist ,String filename) throws IOException{
//try (Writer writer = new FileWriter(filename+".json")) {
if (!json_hist.isEmpty()) {
JSONArray jsonarray = new JSONArray(json_data);
JSONArray jsonarray2 = new JSONArray(json_hist);
if (jsonarray.length() != 0 && jsonarray2.length() != 0){
for (int i=0 ; i < jsonarray2.length() ; i++){
JSONObject jsonObject = jsonarray2.getJSONObject(i);
int j = jsonarray.length()+i ;
jsonarray.put(jsonarray.length(), jsonObject) ;
}
try (FileWriter file = new FileWriter("C:\\Users\\admin\\Documents\\NetBeansProjects\\VS_Wetterdienst\\src\\main\\resources\\sensor_data_json\\sensors_data_hist\\"+filename + ".json")) {
file.write(jsonarray.toString());
file.flush();
} catch (IOException e) {
e.printStackTrace();}