• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Error

            C++博客 首頁 新隨筆 聯系 聚合 管理
              217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks
            現象:
            切換到unicode編譯以后發現款字符的中文全部無法輸出,查詢以后是Locale引起的,首先用SetLocal設置程序local發現無效,最后定位到log4cplus配置文件:
            log4cplus.appender.complete.Locale=chs
            這樣設置之后發現尼瑪還是不行,繼續分析,發現是filename的中文部分被截斷了。

            然后對log4cplus的代碼動手,__FILENAME__改成LOG4CPLUS_TEXT(__FILENAME__),修改一對錯誤之后發現勉強可以用了,但還是有缺陷,早日自己動手寫才是王道,,,
            posted on 2014-01-13 09:54 Enic 閱讀(1627) 評論(1)  編輯 收藏 引用

            評論

            # re: 關于log4cplus無法輸出中文的隨記 2014-04-16 16:44 imagebreaker
            log4cplus用的是C++的locale,你得用std::locale::global(std::locale("chs"));
            僅僅用_tsetlocale(LC_ALL, _T("chs"));不給力,因為std::locale里有靜態變量記錄著當前locale,而log4cplus玩的是C++的locale,直接用_tsetlocale雖然設置了C的locale,但沒有賦值給std::locale里的靜態變量,所以,你懂的。  回復  更多評論
              

            久久午夜伦鲁片免费无码| 久久国产精品77777| 色婷婷噜噜久久国产精品12p| 国产69精品久久久久9999| 久久高清一级毛片| 中文字幕无码久久久| 久久精品国产亚洲AV嫖农村妇女| 国产一级持黄大片99久久| 色播久久人人爽人人爽人人片aV| 亚洲va久久久噜噜噜久久男同| 99久久国产综合精品成人影院 | 欧美午夜A∨大片久久| 97精品国产97久久久久久免费| 91精品国产91久久| 人妻少妇久久中文字幕| 久久精品视频一| 国产99久久久国产精免费| 精品无码久久久久国产动漫3d| 国产精品99久久不卡| 国产精品久久久久久久| 精产国品久久一二三产区区别| 成人亚洲欧美久久久久| 久久久久亚洲Av无码专| 久久精品桃花综合| 综合久久精品色| 久久精品免费大片国产大片| 久久香蕉综合色一综合色88| 日韩精品久久无码中文字幕| 欧美日韩精品久久免费| 欧美成a人片免费看久久| 国产ww久久久久久久久久| 久久久国产精品福利免费| 亚洲人成精品久久久久| 亚洲精品无码久久久影院相关影片| 久久综合视频网| 久久亚洲精品国产精品婷婷| 中文字幕精品无码久久久久久3D日动漫| yellow中文字幕久久网| 久久国产成人亚洲精品影院| 久久久久一本毛久久久| 一本一道久久a久久精品综合 |