C++读取文本文件中的汉字乱码情况原因及解决

 更新时间:2024年01月19日 10:45:34   作者:软件技术爱好者  
本文介绍简体中文Windows操作系统中,C++读取文本文件中的汉字乱码情况原因及解决,文中通过代码和图文给大家介绍的非常详细,具有一定的参考价值,需要的朋友可以参考下

C++读取文本文件中的汉字乱码情况原因及解决

本文介绍简体中文Windows操作系统中,C++读取文本文件中的汉字乱码情况原因及解决。

问题描述

C++读取文本文件中的汉字乱码情况,下面代码可以读取d:/data.txt中的内容并输出:

//C++将文本文件按行读入
#include<fstream>
#include<iostream>
#include<string>
using namespace std;
 
int main()
{
	ifstream file;
	file.open("d:/data.txt", ios::in);
	string s;
	while(getline(file,s))
	{
		cout<<s<<endl;
	}
	file.close();
	return 0;
}

编译运行,若data.txt文件中含有中文显示乱码,参见下图:

什么原因?

查看cmd当前编码方式,按下win+R组合键,打开运行框之后输入cmd打开,然后在cmd标题栏右键→属性,点开就可以查看当前编码方式:

请留意 “当前代码页”部分,当前编码方式“ANSI”

用记事本,打开你的文本文件,请留意,文件的“编码”格式

文本文件的编码格式默认的比如UTF-8格式,和cmd编码格式“ANSI”不一致,将文本文件的编码格式改为格式“ANSI”即可,参见下图:

再次运行,输出不再乱码。

最后

小结一下,c++读取文件出现乱码的原因是文本文件的编码格式和cmd的编码方式不一致造成的,修改文本文件编码格式,文本文件的编码格式和cmd的编码方式一致即可。

以上就是C++读取文本文件中的汉字乱码情况原因及解决的详细内容,更多关于C++读取文本文件乱码的资料请关注脚本之家其它相关文章!

相关文章

  • 基于Qt OpenCV的图像灰度化像素操作详解

    基于Qt OpenCV的图像灰度化像素操作详解

    这篇文章主要为大家详细介绍了基于Qt+OpenCV的图像灰度化像素操作:最大值法、平均法、加权平均值法,感兴趣的小伙伴可以了解一下
    2022-07-07
  • C/C++ memset方法的误区

    C/C++ memset方法的误区

    memset 作为对内存初始化的函数,还是有不少坑和误区的,今天就来对这个函数作一个总结。避免后期使用不当踩入坑,需要的朋友可以参考下
    2021-04-04
  • boost字符串处理函数format的用法

    boost字符串处理函数format的用法

    这篇文章介绍了boost字符串处理函数format的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • C++实现二叉树非递归遍历算法详解

    C++实现二叉树非递归遍历算法详解

    在C++中,二叉树非递归遍历是一种常用的算法,可避免递归过程中的系统开销和栈溢出问题。非递归遍历算法利用栈数据结构实现,可以实现前序、中序和后序遍历,是C++程序员必备技能之一
    2023-04-04
  • C++ 二叉树的实现超详细解析

    C++ 二叉树的实现超详细解析

    二叉树可以简单理解为对于一个节点来说,最多拥有一个上级节点,同时最多具备左右两个下级节点的数据结构。本文将详细介绍一下C++中二叉树的实现和遍历,需要的可以参考一下
    2022-03-03
  • C语言Turbo C下实现俄罗斯方块

    C语言Turbo C下实现俄罗斯方块

    这篇文章主要为大家详细介绍了C语言Turbo C下写的俄罗斯方块,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • C++ odr用法案例详解

    C++ odr用法案例详解

    这篇文章主要介绍了C++ odr用法案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • C++中多才多艺的 const

    C++中多才多艺的 const

    在C++中,关键字const可以用来修饰任何作用域内的变量、函数参数、函数本体、函数返回值、成员函数、迭代器,也可以用来修饰指针本身和指针目标,可谓多才多艺,我们要详细了解其内部细节,以及逻辑奥秘,让这把多功能瑞士军刀尽情发挥其作用,需要的朋友可以参考一下
    2021-09-09
  • C语言实现最大间隙问题实例

    C语言实现最大间隙问题实例

    这篇文章主要介绍了C语言实现最大间隙问题的方法,是一个比较经典的算法设计问题,对于学习算法设计有一定的借鉴价值,需要的朋友可以参考下
    2014-09-09
  • VSCode配置C语言环境的方法

    VSCode配置C语言环境的方法

    这篇文章主要介绍了VSCode配置C语言环境的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04

最新评论