• <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>

            力為的技術(shù)博客

            聯(lián)系 聚合 管理
              154 Posts :: 1 Stories :: 561 Comments :: 0 Trackbacks

            ?

            問(wèn)題:
            有時(shí)候用ifstream或ofstream打開(kāi)帶有中文路徑的文件會(huì)失敗。

            解決辦法:
            1、使用C語(yǔ)言的函數(shù)設(shè)置為中文運(yùn)行環(huán)境
            setlocale(LC_ALL,"Chinese-simplified");

            2、使用STL函數(shù)設(shè)置為系統(tǒng)語(yǔ)言環(huán)境
            std::locale::global(std::locale(""));

            當(dāng)然選2啦!

            posted on 2006-06-09 22:01 力為 閱讀(13617) 評(píng)論(13)  編輯 收藏 引用 所屬分類(lèi): 4. C++ FAQ5. GP&STL&BOOST

            評(píng)論

            # re: fstream 和 中文路徑 2006-06-09 22:21 LOGOS
            聽(tīng)君一席話(huà),勝讀十年書(shū)。
            以前用VS2003的時(shí)候,用fstream類(lèi)一直可以很好支持中文文件名的,后來(lái)?yè)Q了VS2005之后,建立中文文件名的文件,文件名字卻一直是亂碼(wfstream不在此例),內(nèi)心十分疑惑。
            看了你的貼,做了一下測(cè)試,所有問(wèn)題都OK了。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-06-09 23:25 LOGOS
            做了更多的測(cè)試之后,發(fā)現(xiàn)ios::imbue方法失效了,要改變語(yǔ)言類(lèi)別,只能通過(guò)locale::global實(shí)現(xiàn)。
            但是問(wèn)題卻來(lái)了,設(shè)置global為中文后,cout卻喪失了輸出中文的能力。。。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-06-10 11:13 力為
            VC6可以正常輸出,
            在VC2005下cout不能正常輸出,但ofstream可以正常輸出。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-07-29 23:02 smilerain
            就是這個(gè)麻煩的問(wèn)題
            fstream能找到中文路徑了
            cout確不能輸出中文了.  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-08-27 20:38 wuqiu
            std::locale::global(std::locale(""));
            // open file
            std::locale::global(std::locale(0));
              回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-11-08 18:58 Taorama
            升級(jí)到VS2005,發(fā)現(xiàn)很多東西不能用了。跟蹤半天,發(fā)現(xiàn)是fstream搞得鬼。試了很多辦法都無(wú)效。
            老大提供的方法不錯(cuò),馬上就搞定了。STL學(xué)的不好,老大是能解釋一下嗎。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-11-08 20:10 Taorama
            “1、使用C語(yǔ)言的函數(shù)設(shè)置為中文運(yùn)行環(huán)境
            setlocale(LC_ALL,"Chinese-simplified");”

            這句話(huà)應(yīng)該改為
            setlocale(LC_ALL,"");
            才對(duì)。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2006-11-14 12:02 doermlp
            請(qǐng)教樓主,用了上面的方法2之后的確能解決中文路徑問(wèn)題,但是向文件中寫(xiě)入整型或浮點(diǎn)型數(shù)據(jù)時(shí)有問(wèn)題,比如“1000”,輸出之后就成了“1,000”,這個(gè)問(wèn)題能解決嗎?謝謝。  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2007-07-04 02:19 天津大學(xué)計(jì)算機(jī)學(xué)院 常興龍
            很不錯(cuò)!  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2007-08-23 11:37 小胡
            比如“1000”,輸出之后就成了“1,000”,這個(gè)問(wèn)題我也遇到了,文件名也會(huì)這樣  回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2007-08-23 11:38 小胡
            @小胡
            有解決的辦法碼
              回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2007-09-15 02:05 lax
            @小胡
            設(shè)置輸出流的local為"C"即可,利用imbue()方法。
            若輸出流對(duì)象為a,則
            a.imbue(std::locale("C"));
            這樣就不會(huì)出現(xiàn)1,000的現(xiàn)象。
              回復(fù)  更多評(píng)論
              

            # re: fstream 和 中文路徑 2008-01-02 19:14 進(jìn)而人員
            謝謝!  回復(fù)  更多評(píng)論
              

            久久久久人妻一区二区三区| 久久r热这里有精品视频| 久久亚洲国产成人影院网站| 日韩电影久久久被窝网| 伊人久久大香线蕉综合5g| 亚洲国产精品久久久天堂| 久久精品嫩草影院| 久久久国产99久久国产一| 久久精品国产清高在天天线| 久久精品成人欧美大片| 久久精品国产亚洲av水果派| 久久精品国产一区二区电影| 国内精品久久久久久99蜜桃| 欧美无乱码久久久免费午夜一区二区三区中文字幕 | 午夜不卡888久久| 亚洲AV日韩精品久久久久| 久久国产三级无码一区二区| 久久精品国产清高在天天线| 国产精品99久久久久久宅男小说| 久久香蕉国产线看观看乱码| 精品无码久久久久久尤物| 久久久久久久免费视频| 久久亚洲色一区二区三区| 精品午夜久久福利大片| 久久久久久久久无码精品亚洲日韩 | 青青草原综合久久大伊人| 7国产欧美日韩综合天堂中文久久久久 | 国产ww久久久久久久久久| 久久久久国产精品人妻| 欧美日韩中文字幕久久久不卡| 伊人丁香狠狠色综合久久| 国产美女久久久| 久久美女网站免费| 久久免费精品视频| 久久婷婷综合中文字幕| 夜夜亚洲天天久久| 91久久成人免费| 久久精品国产亚洲一区二区三区 | av国内精品久久久久影院| 三上悠亚久久精品| 久久久久久久久无码精品亚洲日韩 |