发布时间:2024-08-12
浏览次数:0
在日常开发中,我们经常会用到 vim、vs code 等第三方编辑器,这些编辑器虽然可以使用很多插件来提高我们的编码效率sublime text 3 乱码,但是却经常会造成乱码的情况。我一般都是使用 to ,但是打开里面写的代码之后,经常会出现中文乱码的情况,让人很不舒服。原因就是第三方编辑器一般都使用 utf8 编码,而 text 则不会。
要解决这个问题,我们首先需要检查编辑器使用的是哪种编码,但是在设置中却找不到文本中的编码设置。
这样,我们只能修改第三方编辑器的编码方式,因为找不到在哪里修改。也找不到具体用的是哪种编码方式。但是我们知道不同的编码方式,文件头是不一样的,比如utf8的文件头就是,所以我们可以读取这个文件头来获取文件的编码方式。我直接用里面提供的包直接解析,不再自己写代码去解析文件头了。
在里面新建一个.v文件,在里面写一些中文sublime text 3 乱码,然后使用下面的代码来解析这个文件,建议多写一些中文,这个包其实就是一个概率问题,写的越多,它的准确率就越高。
import chardet
f = open(r'G:\tttt\tttt.srcs\sources_1\new\testEncode.v', 'rb')
data = f.read()
print(chardet.detect(data))
可以看出编码方式是 ,和utf8不一样,所以造成乱码是正常的。我们可以设置我们的第三方编辑器也为此编码或者GBK,就不会出现乱码了。GBK可以算是 的一个超集。
我们来测试一下:
我们新建一个aaa.v,用 修改,修改完之后添加到 ,再用 打开,发现乱码。
接下来修改为gbk编码:
设置完成后,再次打开文件,发现编码正常。
我是通过设置为 GBK() 来解决乱码的。在网上看到一种说法是使用 ANSI 编码,可能有人会奇怪 ANSI 编码设置为 GBK 怎么能解决问题呢?其实 ANSI 编码在不同的操作系统上是不一样的,你可以把它看成是一种本地编码,比如在简体中文操作系统上就是 GBK() 编码,除此之外还可以是 Big5 之类的编码,总之和操作系统有关。所以大家可以参考这个解决编码问题的过程,在不同的机器上可能需要设置不同的编码方式来解决乱码问题。
群里有各种学习资料和大佬们,欢迎加入QQ交流群:
*******往期精彩文章列表********
如有侵权请联系删除!
Copyright © 2023 江苏优软数字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服务提供商
13262879759
微信二维码