关于文字编码那些事

本文深入探讨了文字编码的原理,解释了乱码产生的原因,包括转换错误和字体缺失,并详细阐述了Unicode与UTF-8的关系,以及如何正确处理字符和字符串在不同场景下的编码问题。

为什么会有这么多种编码方式?
为什么会有乱码?
英文怎么没有乱码?
unicode和UTF-8是一回事儿吗?
如何判断一段文字是使用哪种编码方式?
还有两个base64和url encode, 这是什么鬼东西?


显示中的文字
我们为什么能在显示屏上看到文字?一定要有一个应用程序通过某个组件,将文字显示出来。应用程序可以是浏览器, 系统程序, 普通应用程序。通过给组件设定某个属性,如text属性。 要想显示某个字,除了知道这个字的编码,还要确定使用哪种字体。字体文件中通常包含一个编码和样式的对照表,对照表中使用的编码可能是Unicode,也可能是不存在的。

字符串转换–>猜测编码–> 选择Font --> 显示

根据上面的过程, 出现乱码,基本就有两种原因

  1. 转换过程中出错
  2. 编码猜错了(或者没有猜测,仅支持一种文字编码)
  3. 选择的Font不包括要显示的文字

在这里插入图片描述
Excel VBA 编辑器
乱码1
上面的乱码是哪种错误呢?
在这里插入图片描述
上面这种乱码就是字体中文字不全造成的。

Unicode和UTF-8的转换关系

在这里插入图片描述

例子:
https://www.compart.com/en/unicode/U+8A9E

传输中的文字

发送和接收方必须明确知道编码方式,不能使用猜的方法。 否则很容易出现乱码。

字符和字符串

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值