setOut: 改变输出流

public class App {public static void main(String[] args) throws FileNotFoundException {PrintStream console = System.out;PrintStream logFile = new PrintStream("/home/jaemon/console.out");System.out.println("start...");// 切换输出到文件System.setOut(logFile);System.setErr(logFile);for (int i = 1; i < 6; i++) {System.out.println("key_" + i);// 同时输出到控制台console.println("key_" + i);}// 切换输出到控制台System.setOut(console);System.setErr(console);System.out.println("end...");}
}

控制台数据

start...
key_1
key_2
key_3
key_4
key_5
end...

console.out 文件内容

key_1
key_2
key_3
key_4
key_5

setIn: 改变输入流

public class App {public static void main(String[] args) throws FileNotFoundException {InputStream console = System.in;InputStream logFile = new FileInputStream("/home/jaemon/console.out");// 从文件中读取输入System.setIn(logFile);Scanner scanner = new Scanner(System.in);while (scanner.hasNextLine()) {System.out.println(scanner.nextLine());}System.out.println("-----------------------");// 从控制台读取输入System.setIn(console);scanner = new Scanner(System.in);while (scanner.hasNextLine()) {System.out.println(scanner.nextLine());}       }
}

控制台输出

key_1
key_2
key_3
key_4
key_5
-----------------------
...     // 控制台读取输入

Java使用System.setOut()对输出流进行重新分配相关推荐

  1. System.setOut()和System.setIn()

    System.setOut()改变输出流对象 public static void main(String[] args ) {try {PrintStream out = System.out;Pr ...

  2. java中System重定向输出流

    java中System重定向输出流_javasunboy_新浪博客 java中System重定向输出流 (2011-10-25 18:01:48)     转载▼ 标签: java     日志文件 ...

  3. Java - System.setOut() 与 System.setIn()

    setOut()方法可以改变输出流 package java1200; //可以向文件里写数据 import java.io.FileNotFoundException; import java.io ...

  4. System.setOut(ps)重定义了输出流后,如何重定向控制台输出

    可以用 System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out))); 重新定位到标准输出流

  5. java 标准输入流 关闭 打开_java输出流关流疑问,以下这个程序的in和out是否要关闭?...

    /**标准IOjava.lang.System类中提供以下三个静态常量:staticfinalInputStreamin功能:"标准"输入流,流已打开并准备提供输入数据.通常,此流 ...

  6. 关于java中的setOut()方法

    看一个关于io流的例子: import java.io.*; public class RedirectOutputStream {  public static void main(String[] ...

  7. 使用System.setOut()

    setOut()方法可以改变输出流 [java] view plaincopy package java1200; //可以向文件里写数据 import java.io.FileNotFoundExc ...

  8. System.setOut()重定向输出解释

    static void test04() throws FileNotFoundException {/* FileOutputStream(FileDescriptor fdObj)创建一个向指定文 ...

  9. PrintStream和System.setOut(PrintStream ps)用法

    PrintStream:为其他输出流添加了功能,是他们能够方便的打印各种数据值的表现形式. 1. 永远不会抛出IOException,异常情况可通过checkError()方法测试的内部结构: 2. ...

最新文章

  1. 利用Kafka和Cassandra构建实时异常检测实验
  2. showModalDialog数据缓存问题
  3. Leet Code OJ 171. Excel Sheet Column Number [Difficulty: Easy]
  4. VS2008中源文件与模块生成时的文件不同,仍要让调试器使用它吗
  5. [react] React为什么不要直接修改state?如果想修改怎么做?
  6. java 内部类私有成员 能访问,为什么外部Java类可以访问内部类私有成员?
  7. npm publish npm resource busy or locked 4082 发布出错解决方案
  8. 嵌套DIV中的onClick事件在嵌套容器中的连环作用
  9. Hyperledger Fabric教程(12)--链码chaincode样例
  10. Ionic 如何使用 Cordova 插件
  11. 群体智能优化算法之蝙蝠算法(Bat Algorithm,BA)
  12. 《算法导论》第三版第13章 红黑树 练习思考题 个人答案
  13. rms 文档权限服务器,Rms操作设置office系统文档权限
  14. 以梦为马,扬帆起航,双非人的2021,万字逐梦旅
  15. 音视频开发—抖音GsyVideoPlayer视频底层分析使用
  16. 让Atmega8A-PU 支持外部晶振的熔丝设置
  17. videopose3d 用自己的视频跑结果
  18. 【欧几里得扩展欧几里得】
  19. mmclassification
  20. php sequelize,关于javascript:eggjs-sequelize-的常用方法总结

热门文章

  1. 国培南通之行的感悟——(其三)
  2. 天坑专业成功跨考计算机,研0渣渣前来报到
  3. PhpBazar adid SQL注入漏洞
  4. 镜头跑焦测试软件,[转载]关于如何测试镜头跑焦及测试卡制作
  5. cass简码大全_CASS分类简码
  6. 2021-07-28 Python爬虫
  7. 设置Windows Internet时间同步周期
  8. 【微信小程序】 map 组件 callout 自定义气泡 (实实在在的讲解)
  9. 【小5聊】一招解决win7浏览器不能上网的情况
  10. 什么样的公司程序员待遇好