Как удалить содержимое из файла? - PullRequest
0 голосов
/ 29 декабря 2018

Как удалить содержимое, добавленное в файл, в режиме добавления.Этот файл содержит большое количество записей до добавленных данных.

Как мне удалить jsonObject3 и jsonObject4 из этого файла?Пожалуйста, используйте код ниже

public class MainDemo {
  public static void main(String[] args) throws SQLException, 
                      ClassNotFoundException, IOException {


    String FileSeparator=System.getProperty("file.separator");
    Path p=Paths.get("Dummy\\Downloads\\Test\\2018-12-28\\D");

    JSONObject jsonObject1 = new JSONObject();  
    jsonObject1.put("id",1);
    JSONObject jsonObject2 = new JSONObject();  
    jsonObject2.put("id",2);
    JSONObject jsonObject3 = new JSONObject();  
    jsonObject3.put("id",3);

    JSONObject jsonObject4 = new JSONObject();  
    jsonObject4.put("id",4);

    List<JSONObject> al=new ArrayList<>();

    al.add(jsonObject1);
    al.add(jsonObject2);
    al.add(jsonObject3);
    al.add(jsonObject4);

    for(JSONObject jsonObject:al) {
        String json=jsonObject.toString();      
        Files.write(
                Paths.get(p+FileSeparator+"Dummy.json"), 
                json.getBytes(), 
                StandardOpenOption.APPEND);

    }
    al.clear();
          // How do I remove the jsonObject3 and jsonObject4 from Dummy.json file

}
}

1 Ответ

0 голосов
/ 29 декабря 2018

В этом случае вы должны добавить объекты с помощью строки-разделителя или символа, такого как '$' и т. Д., Затем вы можете прочитать файл и затем сохранить прочитанную строку в строковой переменной.Затем вы получите объекты в массиве, используя string.split (separatorString).Затем удалите элемент, который вы хотите, и перепишите данные в файле в режиме перезаписи из массива.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...