System.setOut 重定向 memcached 的输出
调用 memcached 的方法
pool = SockIOPool.getInstance(poolName);
此代码并未抛出异常, 而是在后台打印了错误信息, 估计是 使用了 System.setOut。
进行捕捉也捕捉不到任何东西。。
怎么办呢?
System.setOut 重置 out 解决问题。但是, 怎么在System.setOut, 设置回来呢?
事先
PrintStream err;PrintStream out = null;PrintStream www = null;PrintStream old = System.out;try {String fileName = "MemcachedUtil.ERR.txt";String fileName2 = "MemcachedUtil.OUT.txt";String fileName3 = "MemcachedUtil.www.txt";err = new PrintStream(fileName);out = new PrintStream(fileName2);www = new PrintStream(fileName3); // System.setErr(err );System.setOut(out );// System.out.println( 1/0 );} catch (FileNotFoundException e) {// TODO Auto-generated catch block e.printStackTrace();}
然后再 System.setOut( System.out ); —— 可是这样就失效了,
System.setOut(www) 则是可以的
System.setOut( old ); 也可以的
System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out))); 都是可以的!
看来要研究下里面的源码, 使用了很多开源的技术框架, 却不懂底层原理, 很多不懂, 怎么行?
转载于:https://www.cnblogs.com/FlyAway2013/p/5535448.html
System.setOut 重定向 memcached 的输出相关推荐
- System.setOut()重定向输出解释
static void test04() throws FileNotFoundException {/* FileOutputStream(FileDescriptor fdObj)创建一个向指定文 ...
- PrintStream和System.setOut(PrintStream ps)用法
PrintStream:为其他输出流添加了功能,是他们能够方便的打印各种数据值的表现形式. 1. 永远不会抛出IOException,异常情况可通过checkError()方法测试的内部结构: 2. ...
- System.setOut(ps)重定义了输出流后,如何重定向控制台输出
可以用 System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out))); 重新定位到标准输出流
- 用System中System.setOut()方法修改输出方式
方法:重写PrintStream里的println方法 public static void main(String[] args) throws FileNotFoundException {i ...
- 深入理解虚拟机实战:修改class文件实现System标准输出重定向
一.背景 在深入理解Java虚拟机的过程中,理解java程序在虚拟机层次如何执行十分重要.了解了深层次的东西,才可以实现一般情况下做不到的特殊功能,而这种特殊功能面向的对象往往是程序员本身.下面我们通 ...
- 真·浅谈System.setOut()
java中我们熟悉的输出System.out.println()只能将数据输出到控制台上,那么我们像要将数据输出到背的地方时该怎么办? System.setOut()来了. System.out是 S ...
- Java使用System.setOut()对输出流进行重新分配
setOut: 改变输出流 public class App {public static void main(String[] args) throws FileNotFoundException ...
- linux错误日志重定向,Linux shell 重定向标准错误输出
文件描述符文件描述符是程序发送输出和获取输入的地方.当执行一个程序时,运行该程序的进程打开了3个文件描述符,分别是:0(标准输入).1(标准输出)和2(标准错误输出).重定向输出符号(>)是1& ...
- Java - System.setOut() 与 System.setIn()
setOut()方法可以改变输出流 package java1200; //可以向文件里写数据 import java.io.FileNotFoundException; import java.io ...
最新文章
- 特殊SQL语句及优化原则
- 用 YOLOv5模型识别出表情!
- PlayMaker GUI跟随布局的使用
- zabbix初始化设置时无法到DB配置页面
- json2jsoncpp 关键代码分析1
- 用记事本开始写自己的第一个WebService
- P2574 XOR的艺术
- 自考计算机专业,自考计算机
- 使用python实现GBK转unicode码查询表
- js去掉字符串的空格
- 渗透测试工程师面试题大全(164道)
- vss服务器状态失败_vss问题解决办法
- BIOS 从FFFF0H处开始执行指令的理解
- Protocol Buffer 基础(Python 版)
- 2021年中国商品期货交易规模分析:交易量达71.71亿手,同比增长21.15%[图]
- H1B工作签证·绿卡:美国留学的两个关键步骤
- 基于切比雪夫逼近法的滤波器的matlab设计与实现
- linux 查询文件大小
- n个点求 能构成多少个三角形
- then里面调用 await