一、编码原理

【ANSI】
在windows系统下,其所谓的ANSI编码实际上是对应当前系统 locale 的编码。各个地区不同,在中国地区默认是GBK,在台湾地区默认是BIG-5。
【utf-8】
在windows系统下,如果用自带的记事本另存为UTF8编码,实际上记事本会在其头部加上一个BOM符号,方便记事本等windows程序分辨其编码格式,但这种带BOM头的文件给其他系统或网站使用时,可能出一些小问题,所以不建议使用自带的记事本存储UTF8格式的文本。
【如何查看一个文件是什么编码】
最简单的方式就是用自带的记事本打开文件,点击另存为,看其默认格式是什么就好了。
专业的方式用UE工具打开文件,在下方就可以看到编码格式,如GBK。

二、乱码问题

  • 我用VS写的源代码,发到别人的电脑,别人用VC++6.0打开,经常发生乱码。

三、分析

打开我用VS写的的源代码,发现其以UTF8编码。
用他们VC++6.0新建一个普通项目,把他这个不会乱码的项目的cpp文件拷贝过来,分析其编码,发现其是GBK编码。得出结论,他的VC6默认以GBK打开源代码。
所以当我把我的UTF8编码的源代码发给他的时候,他的VC6以ANSI-GBK编码打开此文件,看到的就是乱码。
C++:在VS编写的代码拷贝至VC6.0时乱码的问题
C++:在VS编写的代码拷贝至VC6.0时乱码的问题

四、解决方案

将源代码用UE工具打开,点击另存为,选择ANSI,点击确定,随后UE工具会提示选择使用ANSI中的哪种编码,选择GBK编码。然后把这份GBK编码的源代码发给对方即可。
C++:在VS编写的代码拷贝至VC6.0时乱码的问题

相关文章:

  • 2022-12-23
  • 2021-08-29
  • 2021-10-27
  • 2021-08-04
  • 2021-09-16
  • 2021-06-28
  • 2022-01-25
  • 2022-01-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-04
  • 2022-12-23
  • 2021-11-25
相关资源
相似解决方案