Java 为什么PrintStream打印到控制台
为什么Java 为什么PrintStream打印到控制台,java,Java,为什么System.out.println(“Hello World”)会打印到控制台 out是类型为PrintStream的静态变量。外出时调用println()。为什么会打印到控制台?那是默认频道吗?我也可以说打印到文件吗 是的。控制台是默认的输出流。为了使用system.out.println()命令写入文件,您需要更改输出流 PrintStream fileOut = new PrintStream("./out.txt"); System.setOut(fileOut); System
System.out.println(“Hello World”)
会打印到控制台
out
是类型为PrintStream
的静态变量。外出时调用println()
。为什么会打印到控制台?那是默认频道吗?我也可以说打印到文件吗 是的。控制台是默认的输出流。为了使用system.out.println()命令写入文件,您需要更改输出流
PrintStream fileOut = new PrintStream("./out.txt");
System.setOut(fileOut);
System.out.println("this write in file");
out
在启动期间实例化,并映射到主机的标准输出控制台(默认情况下为控制台)
您可以使用setOut
方法更改out
对象,例如,将标准输出改为写入文件:
System.setOut(new PrintStream(new FileOutputStream("log.txt")));
System.out.println("Writing to log.txt");
这里有一个解决方案:但它是java吗?你确定吗?看起来像是C++是的,System.out==控制台。如果JVM的SecurityManager允许,您可能可以使用
System.setOut(PrintStream out)
重新分配out。通常写入文件的方式不同,如Bartosz所说。PrintStream
包装OutputStream
。stdout是一个ostream/OutputStream
System.out表示stdout“stdout,也称为标准输出,是进程可以写入输出的默认文件描述符。”确定。所以变量out来自PrintStream类型。我以为PrintStream只用于文件。那么,如何将其默认为控制台呢。控制台不是文件。不,PrintStream不仅仅用于该文件。PrintStream为其超级类OutputStream添加了一些功能。还有另一个OutputStream称为FileOutputStream,它是为文件创建的。要创建可以写入文件的PrintStream,您需要执行以下操作:new PrintStream(new FileOutputStream(“Engineer.txt”);