如何从文件中删除内容?

时间:2018-12-29 07:48:23

标签: java file

如何删除在追加模式下添加到文件中的内容。该文件在附加数据之前包含大量记录。

如何从此文件中删除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 :(得分:-1)

在这种情况下,您应该在分隔符字符串或“ $”等符号的帮助下附加对象,然后可以读取文件,然后将读取的字符串存储在字符串变量中。 然后,您将使用string.split(separatorString)获得数组中的对象。 然后删除所需的元素,并以覆盖模式从数组中重写文件中的数据。