解决Sublime Text 3在GBK编码下的中文乱码问题

本文介绍如何在SublimeText3中解决GBK编码文件的中文乱码问题,通过安装Package Control和ConvertToUTF8插件,实现文件编码的正确识别与转换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Sublime Text 3 编辑器默认不支持GBK的编码格式,因此打开GBK的代码文件,如果里面有中文的话,就会乱码。

Package Control包,是一个用来安装其他插件的包,要装其他插件,首先要先装这个包才行。

按ctrl+~快捷键,调出一个小文本款,然后粘贴以下代码:

import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)

安装完后重启下Sublime Text 3,在perferences选项一栏下面就会多了个Package Control。

点击Package Control,上面会出来一个输入框,我们输入install,就会自动有提示那个install package,我们点击一下install package,输入框会消失,稍等一下又会弹出个输入框。

这时输入需要安装的那个插件包(ConvertToUTF8)。

安装好这个包之后,重启下Sublime Text 3,可以发现打开GBK编码格式下的中文也不会乱码了。

使用Sublime打开后,注意看sublime的左下角,除了行列信息并无其他,一般而言,说明sublime是按照UTF8编码打开的文件。

为了解决编码问题,需要安装ConvertToUTF8插件,打开sublime的“package control“,输入inp,可以看到install package选项。

点击install package,在弹出的输入框中输入“Convert”,可以看到会检索出包括ConvertToUTF8在内的一些组件,相关功能都有描述。点击“ConvertToUTF8”进行安装即可。

安装完成后,点击Sublime左上角的“file”按钮,可以看到下拉菜单中多出了两个选项Set File Encode to 和 Reload whit Encode。通过新增的选项可以对文件编码进行转换。此时,再次打开GBK编码格式文件,会发现中文显示正常,同时,sublime左下角显示出了GBK字样,表明该文件的编码是GBK。

首先要明白什么是编码?

简单来说,编码就是从我们日常使用的字符转换成数字的过程,因为计算机里存储的只是二进制的数字。所以编码和解码分别是字符转换成数字和数字转换成字符的行为。而不同的编码规则之间,往往是不能互通的,比如学习计算机时最早接触的ASCII码,用于显示现代英语和其他西欧语言,里面根本没有汉字的编码规则!

后来各个国家和组织推出了自己的编码规则,我国则有GB2312、GBK等编码规范,繁体字则有BIG5,以及国际上最通用的UTF-8编码等等。这些编码规范有的兼容,有的则不兼容,当用不兼容的编码规范去解码显示文件时,就会出现乱码问题!所以对于乱码,最好的办法是切换解码规则。

在sublime中,我们可以使用“Reopen with Encoding”菜单选择使用不同的编码规范打开文件,或者是使用刚刚安装的插件带来的“Reload with Encoding”中的编码方式重新打开。

当发现乱码时,不要盲目的使用“Save with Encoding”等功能,往往会造成编码规则更加混乱和无序。

统一的编码规范相当重要。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值