• 首页

  • 动态

  • 随笔

  • 学习

  • 留言板

  • 文章归档

  • 友情链接

  • 关于页面
S w e e t 的 笔 记
S w e e t 的 笔 记

SuSweet

这个人有点懒,他是个学生,他只会摸鱼,并且从来不写个性签名。

05月
10
默认分类
电控
算法
学习感悟

代码里中文注释变成锟斤拷啦

发表于 2022-05-10 • 字数统计 1241 • 被 6,078 人看爆

首先强调一下,如果代码的中文已经变成”锟斤拷“了的话,本文中的方法无法帮助你恢复。为此我表示十分抱歉。但是本文提供了避免代码锟斤拷的方法,希望能够帮到你。

本文仅仅介绍了”锟斤拷“的形成和避免方法。但是如果你的代码中的中文只是变为了“�”,那希望本文提供的思路可以帮助到你。如果你有其他想法或者更好的方法,欢迎在评论区中提出,我们一起来讨论。

其实这个问题困扰我老久了,因为一直来使用git可视化软件合并的时候,时不时就会出现这个问题。之前也没有深究,只知道是编码问题,偶尔合并下如果变成了锟斤拷就手动修复一下。但是最近的项目因为需求迭代速度快(就是老是改需求),所以合并的次数会比较多,所以还是解决下吧。

image-1652146971635

形成原因

中文变成锟斤拷的原因不是很复杂。我现在用的IDE设置的默认编码格式是GB2312,是国内常用的中文编码格式。因此,我在这里创建保存的文件都是使用GB2312编码的。

image-1652147062477

但是在git中,使用的却是utf-8。所以,在这里查看文件,中文字符就会变成“�”。这是由于utf-8中没有对应编码的字符,于是默认使用了“�”替代未知字符(当然也有时候utf-8正好有对应编码的符号,所以可以看到除了问号,还会有一些其他符号出现)。当我使用它保存文件的时候,代码里面的中文就真的变成了“�”。

image-1652147425549

这时候如果重新用IDE打开,IDE还是以GB2312的编码格式打开,那连续的“�”就会变成我们常见的锟斤拷锟斤拷。

image-1652147697726

一开始我以为是我使用的GitKraken是不支持中文编码的。但是在翻看其他代码的时候,我发现有些居然是可以正常的显示中文。于是确定了,它是支持中文编码的。

解决方法

对于已经变成锟斤拷的代码,确实不知道有什么方法,我都是手动修复的(如果各位大佬有什么好方法的话可以推荐一下)。但是,对于没有变成锟斤拷的代码,只要将编码格式换成utf-8,那后面再用git合并也不会锟斤拷了。这里我选择使用VSCode重新保存,当然这里只要能将编码转成utf-8,用什么软件转都可以。
首先需要使用文件实际的编码将文件打开(比如在我当前的场景下我使用的编码是GB2312,我需要先将文件用GB2312打开)
image
(如果你也是用VSCode,可以点击右下角这个文件编码格式,这里不一定是utf-8)
image-1657180900072
选择【通过编码重新打开】
image-1657180746831
我这里按照我的情况选择【GB2312】,你需要对应自己的情况。一般VSCode通过内容猜测的选项就是可以的了,但是并不确定。
image-1657180962697
此时正常来说,你的文章中的中文应该会恢复正常显示。
然后再次选择右下角刚刚那个编码模式,选择【通过编码保存】并选择【utf-8】即可。
image-1652148329424

image-1652148385081

这时候GitKraken里面已经正常显示代码中的中文注释了。(我试了一下Sourcetree里面也是一样的)

image-1652148543365

但是这个时候有可能IDE这边会变成乱码(也有可能不会),但是没有关系,把IDE这边也改为utf-8编码就可以了。
(虽然说utf-8编码文件会更大,不过为了避免以后还会出现锟斤拷,我已经将项目下所有文件的编码格式都改成utf-8了)

分享到:
Halo数学公式显示支持
典型线性系统——弹簧阻尼系统的Adams仿真与Simulink仿真
  • 文章目录
  • 站点概览
SuSweet

可爱的 SuSweet

你能抓到我么?

QQ Email RSS
看爆 Top5
  • 代码里中文注释变成锟斤拷啦 6,079次看爆
  • Code Composer Studio (CCS)报错program will not fit into available memory (280049C)(#10099-D) 3,780次看爆
  • 解决python中cv2无法自动补全的方法 3,604次看爆
  • CCS中IQmath库报错(_IQ24div(long, long)没有定义) 3,409次看爆
  • 使用GM6020电机参数的Simulink电机控制仿真记录 3,327次看爆

很高兴在这里遇到您!如果您遇到什么问题,或者想留下您的链接,欢迎->网站问题反馈

当然,您也可以通过电子邮件联系我。

Copyright © 2025 SuSweet 粤ICP备2022045669号

由 Halo 强力驱动 · Theme by Sagiri · 站点地图