C / C++ 读取文件出现乱码解决方法 | 输出到文件出现乱码

C / C++ 读取文件出现乱码解决方法 | 输出到文件出现乱码  昨天用C语言写了一下文件读取,发现读出来的全是乱码。这肯定是文字编码不同导致的。    据我查证,C语言的汉字编码方式是由你电脑决定的,所以需要看一下你电脑是什么编码,来确定你需要把文本文件改成什么编码。1.win+R,打开运行框之后输入cmd打开,然后在cmd最上边右键→属性,点开就可以查看当前编码方式,我的电脑是GBK。2.然后修改对应的文本文件编码方式。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

昨天用C语言写了一下文件读取,发现读出来的全是乱码。这肯定是文字编码不同导致的。
这里写图片描述
据我查证,C语言的汉字编码方式是由你电脑决定的,所以需要看一下你电脑是什么编码,来确定你需要把文本文件改成什么编码。
附一个乱码表,能让你知道原来是什么造成的乱码。

在这里插入图片描述


  1. 首先是查看编码方式,如果你能看懂上边的乱码表你就能直接知道是什么编码错误,如果看不懂那就win+R,打开运行框之后输入cmd打开,然后在cmd最上边右键→属性,点开就可以查看当前编码方式,我的电脑是GBK。
    这里写图片描述

  1. 然后修改对应的文本文件编码方式。

提供两种方法:

  • 编辑器是记事本的修改方法
  • 编辑器是sublime text的修改方法

2.1 用sublime text的比较简单,打开之后在文件→设置文件编码(reopen with encoding),选上对应你电脑的编码方式(我的是GBK),然后再刷新一下就可以打开。
这里写图片描述
这里写图片描述

2.2 用记事本的话,打开文件→另存为就可以修改编码方式。这里选ANSI。然后另存为的这个新文件编码方式就修改成功了。
  在 Windows 记事本中:

  • ANSI指的是对应当前系统的编码。(在简体中文Windows操作系统中,ANSI 编码代表 GBK 编码。
  • Unicode指的是带有 BOM 的小端序 UTF-16
  • UTF-8指的是带 BOM 的 UTF-8。

这里写图片描述
这里写图片描述


  1. 现在看看就是成功的显示汉字了。
    这里写图片描述

最近有人私信我,问我为什么读入文件正常了,但是输出的文件依旧是乱码。
在这里插入图片描述
原因还是编码问题你上面的操作只是修改了你读入的那个文件的编码方式,但是并没有修改C++编译器的编码方式,你编译之后输出的文件还是按照编译器自己的编码方式,但是你从电脑上打开的时候用的是电脑默认的编码方式,所以你看到的依旧是乱码。
最简单一劳永逸的方法就是抛弃记事本,用sublime吧,sublime下载一个package之后可以兼容常见的编码方式,不管你是UTF-8还是GBK都能直接显示出正常文字。


⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄我是萝莉安, 这里写图片描述
给我点个赞,我能开心,还能让更多人看到这个文章。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158737.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • DrawerLayout侧滑栏

    DrawerLayout侧滑栏1.DrawerLayout是一个侧滑的布局控件2.以及可以拖拽的一个布局资源3.首先要现在布局文件里面设置好布局,在进行编写代码;第一步:这是最基本的一个布局文件,里面有主界面布局,下面是包含一个button的按钮;<android.support.v4.widget.DrawerLayoutxmlns:android="http://schemas.android.c…

    2022年6月25日
    23
  • 大数据时代下的人工智能医疗应用_大数据下的人工智能

    大数据时代下的人工智能医疗应用_大数据下的人工智能大数据时代下的人工智能医疗十问十答-陆讯1、怎么理解大数据时代下的人工智能健康医疗?2、智能医疗相比于传统医疗有什么优势和劣势吗?3、国内外人工智能医疗的知名公司(医院)有哪些?4、人工智能在医疗领域有哪些应用场景?处在阶段?5、人工智能医疗如何保障用户的安全问题?6、人工智能医疗行业的产品经理从业方向都有哪些?7、如何成为一名合格的人工智能医疗产品经理?8、您所负责过的人工智能医疗产品都是怎样的?9、5G会怎样影响智能医疗行业的发展?10、医疗行业智能化的未来会是什么样?Q1.怎

    2022年9月19日
    4
  • 宇宙简史|生物学家也要了解的物理

    宇宙简史|生物学家也要了解的物理本文转载自"环球地理志",己获授权“盘古开天辟地”天地混沌如鸡子盘古生其中万八千岁、天地开辟阳清为天、阴浊为地盘古在其中一日九变神于天、圣于地▼◤围绕北落师门的圆盘状宇…

    2022年5月8日
    77
  • 单调队列优化的背包问题[通俗易懂]

    单调队列优化的背包问题[通俗易懂]对于背包问题,经典的背包九讲已经讲的很明白了,本来就不打算写这方面问题了。但是吧。我发现,那个最出名的九讲竟然没写队列优化的背包。。。。那我必须写一下咯嘿嘿,这么好的思想。我们回顾一下背包问题吧。01背包问题题目有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总…

    2022年6月25日
    24
  • pycharm 2021.4.14激活码失效_通用破解码「建议收藏」

    pycharm 2021.4.14激活码失效_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    55
  • 解决:java.lang.AbstractMethodError: null

    解决:java.lang.AbstractMethodError: nullspringboot2.x整合sqlserver使用jtds连接池连数据库的时候出现异常2017-02-1512:12:23.955WARN14844—[main]ationConfigEmbeddedWebApplicationContext:Exceptionencounteredduringcontextinitializ…

    2022年6月2日
    373

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号