public class Test5 {
public static void main(String []args ) throws IOException{
try {
int []arr =new int[2];
System.out.println(arr[2]);
} catch (Exception e) {
String str = new SimpleDateFormat("yyy-MM-dd hh:mm").format(new Date());
PrintStream ps =new PrintStream("d:\\异常信息.log");
ps.println(str);
e.printStackTrace(); // e.printStackTrace(ps) 这么写我明白
System.setOut(ps);
}
e.printStackTrace()默认的是System.Out(控制台) 加上PrintStream ps (d:\\异常信息.log)一共两个输出流.
那么下面的System.setOut(ps); 改变的是哪个输出流 的目的 ???
System.setOut(ps)方法为什么不能把System.Out(控制台)这个流的异常信息不能写入d:\\异常信息.log这个目地中.??
|