PrintStream
为其他输出流添加了功能,使它们能够方便地打印各种数据值表示形式。
Throwable: void printStackTrace(PrintStream s):将此 throwable 及其追踪输出到指定的输出流。
作用:记录日志,生成日志文件。
Properties: void list(PrintStream out)将属性列表输出到指定的输出流。
作用:记录系统信息,生成系统信息文件。
示例一
import java.io.*;
import java.util.*;
import java.text.*;
class ExceptionInfo{
public static void main(String[] args)throws IOException{
try{
int[] arr=new int[2];
System.out.println(arr[3]);
}catch(Exception ex){
try{
Date d=new Date();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
String s=sdf.format(d);
PrintStream ps=new PrintStream("exeception.log");
ps.println(s);
System.setOut(ps);
}catch(IOException e){
throw new RuntimeException("日志文件创建失败!");
}
ex.printStackTrace(System.out);
}
}
}
示例二
import java.io.*;
import java.util.*;
class SystemInfo{
public static void main(String[] args)throws IOException{
Properties prop =System.getProperties();
// System.out.println(prop);
prop.list(new PrintStream("sysinfo.txt"));
}
}