09. Java字符编码
大约 2 分钟
在本文章中,学习字符编码的基础知识以及我们如何在Java中处理它。
字符编码的重要性
世界上的语言多种多样,我们经常不得不处理属于多种语言的文本,如汉语或英语。
每种语言中的每个字符都需要以某种方式映射到一组二进制数据 0 和 1。维护映射关系的,就叫做字符编码。
关键术语:编码、字符集、代码点
1.编码
计算机只能理解像1和0这样的二进制表示。处理任何其他内容都需要从现实世界文本到其二进制表示的某种映射。
这种映射是我们所知道的字符编码或编码。
例如,字母 “T” 在 US-ASCII 中编码为 01010100。
2.字符集
字符到其二进制表示的映射在它们所包含的字符方面可能差异很大。
映射中包含的字符数可以从少数字符到实际使用的所有字符不等。映射定义中包含的字符集正式称为字符集。
例如,ASCII的字符集为128个字符。
3.代码点
代码点是将字符与其实际编码分开的抽象。代码点是对特定字符的整数引用。
我们可以用普通小数或备用基数(如十六进制或八进制)表示整数本身。为了便于引用大数字,我们使用备用基础。
例如,字母T在 Unicode 中有一个代码点 U+0054(或十进制为84)。
几种流行的编码方案
略,有空再补充