【Java】Java 重定向的问题,
分享于 点击 29793 次 点评:82
【Java】Java 重定向的问题,
其实一直对IO流很排斥,经常会遇到自己被自己问住的情况,以这段代码为例:
1) 说一下System out println的关系,System是lang包下的一个静态类,public final class System,out其实是PrintStream的一个对象,这个对象被定义在了System里,print和println是这个对象的方法。默认的情况下System.out.println 向控制台打印信息
2)重定向是说,这些方法是在System里的方法,用来改变打印流对象out流打印的走向,一般来说有:
setError setOut SetIn
package test;
import java.io.*;
public class hello {
public static void main(String[] args) throws UnsupportedEncodingException {
try{
PrintStream out = System.out;
//保持当前的流的配置,这个流是直接向控制台输出的
PrintStream ps = new PrintStream("./log.txt");
//重新定义一个打印流
System.setOut(ps);
//重定向,相当于是重新设置Out流
int age = 18;
System.out.println("girl girl girl");
String sex = "nvnvnvnvnvnvnv";
System.out.println("girl girl girl 123");
String info = "this girl"+ sex + "is" + sex;
System.out.println("jieguo is" + info);
System.setOut(out);
//恢复原来的流
System.out.println("=======================");
}catch(FileNotFoundException e){
e.printStackTrace();
}
}
}
相关文章
- 暂无相关文章
用户点评