首页 > 解决方案 > 如何通过Java中的多个类写入单个文件?

问题描述

我正在尝试通过不同的类写入单个文本文件。我从主类打开了文本文件:

public static void main( String[] args ) throws Exception {
    BufferedWriter writer = new BufferedWriter(new FileWriter("src/t1.txt"));
    Parser.getParseTree().print(); // where I called the method
    writer.close();
  }

这是另一个类的 print() 方法:

    public static  void print() throws IOException {

            BufferedWriter writer = new BufferedWriter(new FileWriter("src/t1.txt"));
            writer.write("afcad fad fad");
     }

BufferedWriter writer = new BufferedWriter(new FileWriter("src/t1.txt"));in print() 方法不起作用,并且没有任何内容打印到t1.txt文件 中。

标签: javaiowritefile

解决方案


不要有多个地方(方法),每个地方(方法)都自己写入文件。

只需使用一个中心位置打开文件进行写入(可能使用 try-with-resource),并让任何其他代码在该中心位置调用方法。换句话说,你所有的代码都应该调用同一个方法!


推荐阅读