<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 119  文章 - 3173  trackbacks - 0
    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    交友莫獨酒,茅臺西鳳游。
    口干古井貢,心徜洋河流。
    稱多情杜康,趟無量雙溝。
    贊中華巍巍,無此不銷愁。

    常用鏈接

    留言簿(68)

    隨筆分類(136)

    隨筆檔案(122)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 525293
    • 排名 - 93

    最新評論

    平時開發時我們能很方便的在eclipse中看到控制圖輸出信息.一旦程序獨立運行,我們就很難看到這些信息了.尤其是有時候我們程序對LOG4J使用不規范,開發中隨意用System.out.println();輸出程序運行信息.

    反正是總有人因為某些原因要捕獲控制臺輸入........(比如偶^_^)


    對于普通的java程序包括swt程序,我們可以把控制臺輸出重定向到文本文件或者界面文本框.


    ?1?????class?ConsoleThread?extends?Thread?{
    ?2?????????private?PipedInputStream?pis?=?new?PipedInputStream();
    ?3?
    ?4?????????private?PipedOutputStream?pos;
    ?5?
    ?6?????????private?BufferedReader?reader?=?new?BufferedReader(new?InputStreamReader(pis));
    ?7?
    ?8?????????private?boolean?run?=?true;
    ?9?
    10?????????public?ConsoleThread()?throws?IOException?{
    11?????????????pos?=?new?PipedOutputStream(pis);
    12?????????}
    13?
    14?????????public?PipedOutputStream?getOut()?{
    15?????????????return?pos;
    16?????????}
    17?
    18?????????public?void?run()?{
    19?????????????String?line?=?null;
    20?????????????while?(run)?{
    21?????????????????try?{
    22?????????????????????line?=?reader.readLine();
    23?????????????????}?catch?(IOException?ioe)?{
    24?????????????????????break;
    25?????????????????}
    26?????????????????if?(line?==?null)?{
    27?????????????????????break;
    28?????????????????}?else?{
    29?????????????????????addText(line);//這里處理截獲的控制臺輸出
    30?????????????????}
    31?????????????}
    32?????????}
    33?
    34?????????public?boolean?isRun()?{
    35?????????????return?run;
    36?????????}
    37?
    38?????????public?void?setRun(boolean?run)?{
    39?????????????this.run?=?run;
    40?????????}
    41?????}


    調用:
    1?try?{
    2?????????????ConsoleThread?coThread??=?new?ConsoleThread();
    3?????????????System.setOut(new?PrintStream(coThread.getOut(),?true));
    4?????????????System.setErr(new?PrintStream(coThread.getOut(),?true));
    5?????????????coThread.start();
    6?????????}?catch?(IOException?e)?{
    7?????????????e.printStackTrace();
    8?????????}

    但是有個問題,log4j輸出到控制臺的信息捕獲不到........
    郁悶

    log4j.properties
    1?log4j.rootLogger=DEBUG?,?stdout
    2?
    3?log4j.appender.stdout=org.apache.log4j.ConsoleAppender
    4?log4j.appender.console.Target?=?System.out
    5?log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    6?log4j.appender.stdout.layout.ConversionPattern=%d?%p?[%c]?-?%m%n

    posted on 2007-01-03 15:01 交口稱贊 閱讀(2732) 評論(0)  編輯  收藏 所屬分類: java相關
    主站蜘蛛池模板: 国产免费爽爽视频在线观看| 亚洲AV成人无码网天堂| 成人无码视频97免费| 亚洲国产综合人成综合网站| 在线亚洲v日韩v| 九月婷婷亚洲综合在线| 一边摸一边爽一边叫床免费视频| 亚洲XX00视频| 久久一区二区免费播放| 久久久久久a亚洲欧洲aⅴ| 日韩精品在线免费观看| 91嫩草私人成人亚洲影院| 97人妻无码一区二区精品免费| 亚洲永久在线观看| 国产精品久久免费视频| 国产精品成人免费观看| 久久精品国产精品亚洲艾| 国产免费不卡视频| 爱情岛亚洲论坛在线观看| 亚洲色爱图小说专区| 久久99热精品免费观看牛牛| 亚洲午夜在线一区| 亚洲AⅤ无码一区二区三区在线| A毛片毛片看免费| 亚洲一级毛片免费在线观看| 国产午夜无码视频免费网站| 精品一区二区三区免费观看 | 亚洲一区二区视频在线观看| 青青草无码免费一二三区| 亚洲色欲色欲www| 亚洲高清免费视频| 久久国产色AV免费观看| 亚洲国产精品嫩草影院| 亚洲理论电影在线观看| 免费观看成人毛片a片2008| 黄色视频在线免费观看| 亚洲乱码中文论理电影| 亚洲一级特黄大片无码毛片| 久久久久av无码免费网| 精品熟女少妇aⅴ免费久久| 亚洲综合一区无码精品|