是的,Java中的System.out.println()輸出可以被重定向。你可以使用System.setOut()方法將System.out重定向到一個(gè)文件或其他輸出流。這里有一個(gè)簡(jiǎn)單的例子,演示如何將System.out重定向到一個(gè)文件:
import java.io.FileOutputStream;
import java.io.PrintStream;
public class RedirectSystemOut {
public static void main(String[] args) {
try {
// 創(chuàng)建一個(gè)文件輸出流
FileOutputStream fos = new FileOutputStream("output.txt");
// 創(chuàng)建一個(gè)新的PrintStream對(duì)象,將輸出重定向到文件
PrintStream ps = new PrintStream(fos);
// 將System.out重定向到新的PrintStream對(duì)象
System.setOut(ps);
// 現(xiàn)在,所有的System.out.println()調(diào)用都會(huì)被寫(xiě)入到output.txt文件中
System.out.println("Hello, World!");
// 關(guān)閉文件輸出流和PrintStream對(duì)象
ps.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
在這個(gè)例子中,我們首先創(chuàng)建了一個(gè)FileOutputStream對(duì)象,用于將輸出寫(xiě)入到名為"output.txt"的文件。然后,我們創(chuàng)建了一個(gè)新的PrintStream對(duì)象,并將其與FileOutputStream關(guān)聯(lián)。接下來(lái),我們使用System.setOut()方法將System.out重定向到新的PrintStream對(duì)象。最后,我們關(guān)閉了文件輸出流和PrintStream對(duì)象。
現(xiàn)在,當(dāng)我們調(diào)用System.out.println()時(shí),輸出將被寫(xiě)入到"output.txt"文件中,而不是控制臺(tái)。