C++输入输出汉字具体应用技巧分享

开发 后端
我们今天将会通过一段代码的解读为大家详细介绍C++输入输出汉字的方法。希望能够帮助朋友们在学习的过程中对此有一个充分的掌握。

C++编程语言中,对于中文字符的处理方式有很多种,开发人员可以根据自己不同的需求来选择一种适合自己的方式。比如今天为大家介绍的C++输入输出汉字的实现方法,就是其中一个比较简单的方式。

C++里面用L宏的时候只是说是宽字符,但是并不一定是Unicode,也就是说具体使用什么字符集要程序员自己去设定,这就是imbue的作用,那你文件里不能输入汉字也是这个问题,你只要象下面一样设置下就可以了:

in.imbue(locale("chs"));   
in>>text;   
out.imbue(locale("chs"));   
out<<text;  
  • 1.
  • 2.
  • 3.
  • 4.

这样C++理论上可以处理任何的字符集.

完整修改的C++输入输出汉字代码如下:

你是vc++6.0吧,那你只需要先设置后打开文件就可以了,这是一个已知的BUG;代码如下:

#define _UNICODE   
#include <iostream>   
#include <fstream>   
using namespace std;   
void main()   
{   
wchar_t text=L'我'; //这是调试看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<<text;   
out.close();   
wcout.imbue(locale("chs")); //如果把上面两行去掉,下面是对的   
//需要设置imbue才能输出中文字符,不过还是不懂imbue是干什么的?   
wcout <<"this is "<<text << endl;   
system("PAUSE");   

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

以上就是对C++输入输出汉字的相关操作介绍。

【编辑推荐】

  1. C++ static不同的应用方式
  2. 各个C++内存区域功能对比
  3. C++可变参数表基本内容探讨
  4. C++仿函数基本概念浅析
  5. C++栈对象产生禁用方式
责任编辑:曹凯 来源: 博客园
相关推荐

2010-02-06 14:28:38

C++标准输入输出

2010-02-01 11:13:00

C++ Traits

2010-02-06 13:47:08

C++标准扩展

2010-02-04 14:58:06

C++内存分配

2010-02-06 17:21:20

C++ CreateT

2010-02-01 17:09:07

C++链表操作

2010-02-05 13:44:06

C++ eof()函数

2010-02-06 16:16:01

C++冒泡排序

2010-02-05 18:04:21

C++剪切板

2010-02-01 17:37:35

C++调用C链接库

2020-09-04 11:02:47

Java技巧参数

2011-07-13 16:36:11

C++

2010-02-25 15:25:19

WCF通道

2010-02-05 17:25:26

C++标识符命名规则

2010-02-23 13:03:34

WCF序列化

2010-02-06 13:52:39

C++ profile

2010-03-04 14:39:52

Python读取输入值

2011-11-28 09:25:36

Java输入输出

2021-05-07 20:01:23

IO输入输出

2010-02-03 15:58:51

C++ timer
点赞
收藏

51CTO技术栈公众号