/**标准IOjava.lang.System类中提供以下三个静态常量:staticfinalInputStreamin功能:“标准”输入流,流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指...
/**
标准IO
java.lang.System类中提供以下三个静态常量:
static final InputStream in
功能:“标准”输入流,流已打开并准备提供输入数据。通常,此流对应于键盘输入或者由主机环境或用户指定的另一个输入源。
static final PrintStream out
功能:“标准”输出流,此流已打开并准备接受输出数据。通常,此流对应于显示器输出或者由主机环境或用户指定的另一个输出目标。
static final PrimeStream err
功能:“标准”错误输出流。此流已打开并准备接受输出数据。通常,此流对应于显示器输出或者由主机环境或者用户指定的另一个输出目标。
以上3种流都是java虚拟机在启动应用程序自动创建的。
static void setIn(InputStream in):对标准输入流重定向
static void setOut(PrintStream out):对标准输出流重定向
static void serErr(PrintStream err):对标准错误输出流重定向
*/
import java.io.*;
public class StandardIORedirect{
public static void main(String[] args)throws IOException{
PrintStream console = System.out;
BufferedInputStream in = new BufferedInputStream(new FileInputStream
("E:\\JavaPractice\\StandardIORedirect.java"));
PrintStream out = new PrintStream(new BufferedOutputStream(new FileOutputStream
("E:\\JavaPractice\\StandardIORedirect.txt")));
System.setIn(in); //对输出流重定向
System.setOut(out);
System.setErr(out);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s;
while((s=br.readLine())!=null){ //从BufferedReader类中读取一行数据
System.out.println(s);
}
out.close();
System.setOut(console);
}
}
in和out是否要关闭?
展开