这是我写的获取TXT文件内容的代码,但是在获取中文时就会乱码,这怎么解决??C++

ifstreaminput("c:\\a.txt");if(!input){cerr<<"error!";}stringline,word;stringArray[3][... ifstream input("c:\\a.txt");
if(!input)
{
cerr << "error!";
}

string line, word;
string Array[3][4];
int m(0), n(0);
while (getline(input, line)) //读取每行的字符
{
istringstream isstream(line);
while (isstream >> word) //读取该行用空格隔开的单个数据
{
Array[m][n] = word;
++n;
}
++m;
n = 0;
}
input.close();
展开
 我来答
山水阿锐
2015-06-10 · TA获得超过34.3万个赞
知道顶级答主
回答量:23.7万
采纳率:91%
帮助的人:3.3亿
展开全部
文件以什么格式保存的就必须以什么格式打开。不然就会是乱码。
如果仅假设文件以unicdoe或是当前字符编码保存(一般来说就是中文了),那可以看一下mingjin654321给你的方案。还有一些在此基础上扩展的方案。
如果你需要使用的是多国语言,那么还有两个方案。一个是微软提供了检测字符编码的接口IMultiLanguage3有人使用c#做了移植,还有Mozilla 有一个项目叫Universal Charset Detector也是对检测字符编码的组件,也有人使用C#做了移植。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式