Поскольку большинство выводимых данных выглядят как операторы отладки, существует второй способ сделать это.Вы можете использовать System.setOut (PrintStream printStream) в первом файле и передать ему PrintStream (измените ваш PrintWriter на PrintStream, то же самое для того, для чего вы его используете).Затем в другом файле System.out.println () будет печатать в файл вместо стандартного вывода.
При использовании этого подхода вам не придется изменять первый файл.По сути, это позволяет перенаправлять весь вывод в файл, а не в командную строку, что полезно для приложений с графическим интерфейсом.
Так что во втором файле измените:
java.io.PrintWriter output = new java.io.PrintWriter(newFile);
на
System.setOut(new PrintStream(newFile));
и изменить:
output.println("Your current string number is " + guitar.strings);
...
output.print("Tuning " + guitar.getInstrumentName());
на
System.out.println("Your current string number is " + guitar.strings);
...
System.out.print("Tuning " + guitar.getInstrumentName());