源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Java中重定向输出流实现用文件记录程序日志

  • 时间:2021-08-16 10:18 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Java中重定向输出流实现用文件记录程序日志
System中的out,error都是final类型的,不能做改动。但通过setOut()可以设置新的输出流,从而实现写日志的功能。
import java.io.PrintStream; 
import java.io.FileNotFoundException; 
public class RedirectOutputStream { 
  public static void main(String arg[]){ 
    try{ 
      PrintStream out = System.out; //保留原输出流 
      PrintStream ps = new PrintStream("./log.txt");//创建文件输出流 
      System.setOut(ps); //设置使用新的输出流 
      int age = 18; 
      System.out.println("年龄变量成功定义,初始值为:18"); 
      String sex = "女"; 
      System.out.println("性别变量成功定义,初始值为:女"); 
      String info = "这个是"+ sex +"孩子,应该有"+age+"岁"; 
      System.out.println("整合两个变量为info字符串变量,其结果为"+info); 
      System.setOut(out); //恢复原有输出流 
      System.out.println("程序运行完毕,请查看日志文件。"); 
    } 
    catch(FileNotFoundException e){ 
      e.printStackTrace();} 
  } 
} 
[b]日志如下:[/b] 年龄变量成功定义,初始值为:18  性别变量成功定义,初始值为:女  整合两个变量为info字符串变量,其结果为这个是女孩子,应该有18岁  [b]总结:[/b] 该方法中保存了System类的out成员变量为临时变量,然后创建新的文件输出流,并把这个输出流设置为System类的新是输出流。并将持续的调试信息输出到日志中去。主要方法: 1. setOut()方法: 重新分配System类的标准输出流。 2. setErr()方法:  重新分配System类的标准错误输出流。 3. setIn()方法:    重新分配System类的标准输入流。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部