你真的了解 Unicode 和 UTF-8 吗?
引言 欢迎工作一到八年的Java工程师朋友们加入Java高级交流: 854630135 本群提供免费的学习指导 架构资料 以及免费的解答 不懂得问题都可以在本群提出来 之后还会有直播平台和讲师直接交流噢 一直以来总是对 unicode, UTF-8 等编码知识懵懵懂懂的,尤其是在做项目过程中只要涉及到几个编码之间的转换,都得到网上搜索一番,根据别人的经验照葫芦画瓢,才能解决问题,但是私底下却完全不懂在做什么。 我再也不愿意重复这种状态了,于是就花了一个上午的时间,将这些知识整理了一遍。如果您觉得我的总结有疑问或者错误的地方,欢迎讨论交流,批评指正。 正题之前,先引入我总结的 Unicode 思维导图来预热下: 要了解 Unicode, 先要从 ASCII 码说起。 ASCII 码 什么是 ASCII 码? ASCII 码(American Standard Code for Information Interchange)称为美国标准信息交换码。它是基于拉丁字母的一套电脑编码系统。它定义了一个用于代表常见字符的字典。 ASCII 码都包含哪些字符? 包括 "A-Z"(大小写都包含),数据"0-9" 以及一些常见的符号,要完整查看整个 ASCII 码对应关系。 ASCII 码的局限在哪里? ASCII 当初只是为美国英语而设计的,只能显示 128 个编码,对其他的语言无能为力