新聞中心
在C++編程語言中,對于中文字符的處理方式有很多種,開發(fā)人員可以根據(jù)自己不同的需求來選擇一種適合自己的方式。比如今天為大家介紹的C++輸入輸出漢字的實現(xiàn)方法,就是其中一個比較簡單的方式。

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站建設(shè)、做網(wǎng)站、阿克陶網(wǎng)絡(luò)推廣、小程序開發(fā)、阿克陶網(wǎng)絡(luò)營銷、阿克陶企業(yè)策劃、阿克陶品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供阿克陶建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
C++里面用L宏的時候只是說是寬字符,但是并不一定是Unicode,也就是說具體使用什么字符集要程序員自己去設(shè)定,這就是imbue的作用,那你文件里不能輸入漢字也是這個問題,你只要象下面一樣設(shè)置下就可以了:
- in.imbue(locale("chs"));
- in>>text;
- out.imbue(locale("chs"));
- out<
這樣C++理論上可以處理任何的字符集.
完整修改的C++輸入輸出漢字代碼如下:
你是vc++6.0吧,那你只需要先設(shè)置后打開文件就可以了,這是一個已知的BUG;代碼如下:
- #define _UNICODE
- #include
- #include
- using namespace std;
- void main()
- {
- wchar_t text=L'我'; //這是調(diào)試看text沒問題,就是“我”字
- wofstream out;
- wifstream in;
- in.imbue(locale("chs"));
- in.open("input.txt");
- in>>text;
- in.close();
- out.imbue(locale("chs"));
- out.open("output.txt");
- out<
- out.close();
- wcout.imbue(locale("chs")); //如果把上面兩行去掉,下面是對的
- //需要設(shè)置imbue才能輸出中文字符,不過還是不懂imbue是干什么的?
- wcout <<"this is "<
- system("PAUSE");
- }
以上就是對C++輸入輸出漢字的相關(guān)操作介紹。
【編輯推薦】
- C++ static不同的應(yīng)用方式
- 各個C++內(nèi)存區(qū)域功能對比
- C++可變參數(shù)表基本內(nèi)容探討
- C++仿函數(shù)基本概念淺析
- C++棧對象產(chǎn)生禁用方式
當(dāng)前標(biāo)題:C++輸入輸出漢字具體應(yīng)用技巧分享
標(biāo)題URL:http://fisionsoft.com.cn/article/ccedijo.html


咨詢
建站咨詢
