需要用java编写输入/输出文件的帮助吗

需要用java编写输入/输出文件的帮助吗,java,io,Java,Io,java新手,需要一些帮助。我正在处理2个文件。一个定义一个类及其所有方法,另一个构造该类的实例。我的项目要求我们将类方法的输出写入文件。我的问题是如何让“类定义”文件中的方法写入与“主方法”中定义的方法相同的文件?我目前正在使用System.out.print,我知道这是不正确的。 //文件#1 在第一个类中添加一个私有的PrintWriter属性,并定义一个setPrintWriter()方法,在实例化第一个类并创建PrintWriter之后,从第二个类调用该方法。之后,您可以将playin

java新手,需要一些帮助。我正在处理2个文件。一个定义一个类及其所有方法,另一个构造该类的实例。我的项目要求我们将类方法的输出写入文件。我的问题是如何让“类定义”文件中的方法写入与“主方法”中定义的方法相同的文件?我目前正在使用
System.out.print
,我知道这是不正确的。 //文件#1


在第一个类中添加一个私有的
PrintWriter
属性,并定义一个
setPrintWriter()
方法,在实例化第一个类并创建
PrintWriter
之后,从第二个类调用该方法。之后,您可以将
playinsttrument()
更改为使用它,而不是
System.out


NB:所有.java文件(接口除外)都可以归类为“类定义文件”,因为java中的类外不存在任何代码。

因为您要输出的大部分内容看起来像调试语句,所以有第二种方法来完成它。您可以在第一个文件中使用System.setOut(PrintStream PrintStream),并向其传递一个PrintStream(将PrintWriter更改为PrintStream,这与您使用它的目的相同)。然后,在另一个文件中,System.out.println()将打印到该文件,而不是标准输出

使用这种方法,您不必更改第一个文件。本质上,这允许您将所有输出重定向到一个文件,而不是命令行,这对GUI应用程序很有用

因此,在第二个文件中,更改:

java.io.PrintWriter output = new java.io.PrintWriter(newFile);

和变化:

output.println("Your current string number is " + guitar.strings);
...
output.print("Tuning " + guitar.getInstrumentName());


您好,您能帮我定义setPrintWriter方法吗?”private void setPrintWriter(){java.io.PrintWriter=new java.io.PrintWriter(newFile);}'@Jessiah:首先在类的开头添加属性:
private java.io.PrintWriter PrintWriter
并将该方法定义为
public void setPrintWriter(java.io.PrintWriter pw){this.PrintWriter=pw;}
。它不能是私有的,也不能从你的主类调用。这很好用。谢谢我只上了8周的这门课,所以我们还没有走到那一步。
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());