Как записать в один файл через несколько классов в Java? - PullRequest
2 голосов
/ 16 июня 2019

Я пытаюсь записать в один текстовый файл через разные классы.Я открыл текстовый файл из основного класса:

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 .

1 Ответ

1 голос
/ 16 июня 2019

Не используйте несколько мест (методов), каждое из которых записывает в файл самостоятельно.

Просто используйте одно центральное место, которое открывает файл для записи (возможно, с использованием try-with-resource), и любой другой код вызывает метод в этом центральном месте. Другими словами, весь ваш код должен вызывать один и тот же метод!

...