今天遇到乱码问题,猛然发现自己对unicodeUTF-8之类的区别很是模糊,不由好好看了下相关的知识,具体的文章我在最后列出来,这里主要总结下:
1. Unicode和ISO-XXX
Unicode和ISO-XXXX字符集都源于两个独立的项目,目的都是创立单一字符集,后来双方都认识到不需要存在两个不兼容的字符集,因此进行了整合。因此Unicode和ISO-10646两个标准里所有的字符都在相同的位置并且有相同的名字。
2. UNICODE和UTF-8
Unicode 只是分配整数给字符的编码表,
学名是"Universal Multiple-Octet Coded Character Set",简称为UCS。UCS可以看作是"Unicode Character Set"的缩写. 现在存在好几种将一串字符表示为一串字节的方法. 最显而易见的两种方法是将 Unicode 文本存储为 2 个 或 4 个字节序列的串. 这两种方法的正式名称分别为 UCS-2 和 UCS-4。
UCS只是规定如何编码,并没有规定如何传输、保存这个编码。例如“汉”字的UCS编码是6C49,我可以用4个ASCII数字来传输、保存这个编码;也
可以用utf-8编码:3个连续的字节E6 B1 89来表示它。关键在于通信双方都要认可。UTF-8、UTF-7、UTF-16都是被广泛接受的方
案。UTF-8的一个特别的好处是它与ISO-8859-1完全兼容。UTF是“UCS Transformation Format”的缩写。
3.GBK和GB2312
GBK和GBK2312为中文编码国标,其中鉴于GBK收录汉子过少,而进行扩展并命名为GBK。GBK和GBK2312都属于双字节编码集,2000年的GB18030是取代GBK1.0的正式国家标准,GB18030在GB13000.1的20902个汉字的基础上增加了CJK扩展A的6582个汉字(Unicode码0x3400-0x4db5),一共收录了27484个汉字。GB13000.1就是ISO/IEC 10646-1的中文版,相当于Unicode 1.1。
参考文章:
http://www.zeali.net/entry/86
http://www.cnblogs.com/cy163/archive/2007/05/31/766886.html
常用的字符集
ISO-8859-1
http://zh.wikipedia.org/wiki/ISO/IEC_8859-1
ASCII
http://zh.wikipedia.org/zh-cn/ASCII
Unicode
http://zh.wikipedia.org/zh-cn/UNICODE
分享到:
相关推荐
例如,如果二维码生成器默认使用`UTF-8`编码,而输入的数据是`ISO-8859-1`或`GBK`编码,解码时就会出现错误。因此,正确地进行编码转换至关重要。 解决乱码问题的方法是确保在生成二维码前将数据转换为统一的编码...
### JAVA字符编码详解:Unicode, ISO-8859-1, GBK, UTF-8 及其相互转换 #### 一、引言 在Java编程中,字符编码的管理和转换是一项基本而又重要的任务。不同的编码标准适用于不同的场景,而理解和掌握这些编码之间...
UTF-8、ISO-8859-1 和 GBK 是三种常见的字符编码格式,每种都有其特定的应用场景和优缺点。 首先,UTF-8 是一种广泛使用的多字节编码,能够表示几乎所有的Unicode字符,包括中文。在Java中,UTF-8 支持国际化,是...
### 关于JAVA字符编码:Unicode, ISO-8859-1, GBK, UTF-8 编码及相互转换 在Java开发过程中,字符编码是处理文本数据的基础,不同的编码方式会影响数据的存储、传输以及显示。本文将详细介绍几种常见的字符编码...
字符编码标准之GBK、GB2312、UTF-8和ISO-8859-1的比较 字符编码标准是计算机领域中的一项基本技术,用于将文字或符号转换为计算机能够识别的二进制代码。常见的字符编码标准有GBK、GB2312、UTF-8和ISO-8859-1等,...
本文将针对标题中的几种常见编码格式(GBK、ISO 8859-1、UTF-8)以及如何解决由这些编码方式引发的乱码问题进行深入探讨。 #### 一、编码概述 1. **GBK编码**:GBK是GB2312标准的扩展,支持简体中文,是Microsoft ...
在标题和描述中提到的“批量转 GBK 转 UTF-8”、“gb2312 转 UTF-8”以及“Iso-8859-1 转 UTF-8”是指将使用这些编码格式的文件转换成UTF-8编码。这是因为UTF-8具有广泛的兼容性和通用性,许多系统和软件默认使用UTF...
本文将深入探讨四种常见的字符集编码:ISO-8859-1、GBK、GB18030以及Unicode,并结合Java国际化的字符集转换进行详细说明。 1. ISO-8859-1:这是一种西欧字符编码,包含拉丁字母、数字、标点符号和一些特殊字符。它...
UTF-8是一种变长的Unicode编码方式,每个Unicode字符可以被表示为1到4个字节。GBK,全称为“国标汉字扩展A区”,是中国大陆广泛使用的汉字编码标准,它是GB2312的扩展,兼容ASCII,并且在GB2312的基础上增加了更多的...
汉字编码是计算机处理中文字符的关键技术,涉及到不同的编码标准,如GBK、GB2312、UTF-8以及ISO-8859-1等。这些编码方式在不同场景下有着各自的应用和特点。 首先,GB2312是1980年代中国制定的一种简体中文字符编码...
而ISO系列中的编码,如ISO-8859-1,是西欧语言的编码标准,不支持中文字符。 当一个网站或文件采用不同的编码时,如果不进行正确的转换,可能会出现乱码现象,这时就需要使用到“网站编码转换工具”。该工具能够...
1. 了解IDEA的编码机制:IDEA支持多种编码方式,包括UTF-8、GBK、ISO-8859-1等。了解IDEA的编码机制可以帮助开发者更好地解决编码相关问题。 2. understands GBK编码的特点:GBK编码是一种简体中文编码方案,它支持 ...
4. **万能转换**:这个标签意味着该软件支持多种编码格式之间的转换,不仅限于GB2312、GBK和UTF-8,可能还包括其他编码格式,如Big5、ISO-8859-1等。 5. **字符转换gb2utf8**:这个压缩文件中的"字符转换gb2utf8"很...
ANSI编码,通常指的是基于特定区域设置的Windows默认编码,如GBK或ISO-8859-1等,它只支持有限的字符集,对于非英文字符可能会出现问题。而UTF-8是一种广泛使用的Unicode编码,能表示世界上几乎所有的字符,具有良好...
在这个测试中,我们将探讨ISO8859-1字符集与其他常见的字符集,如UTF-16、UTF-8、GBK和GB2312之间的相互兼容性。 ISO8859-1,也称为Latin-1,是ISO8859系列标准的一部分,它覆盖了西欧语言的基本拉丁字母,包括...
- 解决方法:先将GBK编码的字节流转换为Unicode,然后再从Unicode转换为ISO-8859-1。 - 示例:`String s = "中文"; byte[] gbks = s.getBytes("GBK"); String uni = new String(gbks, "GBK"); byte[] isos = uni....
UTF-8是最广泛使用的编码格式,它使用8位字节,并根据字符的不同范围使用1至4个字节进行编码。UTF-8的一个显著优点是与CPU字节顺序无关,具有良好的平台兼容性和错误容错能力。UTF-16则是16位的编码,与Unicode的...
ISO-8859-1和UTF-8是两种常见的字符编码标准。ISO-8859-1是一种单字节编码,覆盖了大部分西欧语言的字符,但它不支持中文或其他多字节字符。而UTF-8是一种变长编码,可以表示Unicode字符集中的所有字符,包括中文、...
GBK编码,全称“汉字内码扩展规范”(GBK, Chinese Internal Code Specification),是中国大陆使用的一种汉字编码标准,基于GB2312并兼容ISO-8859-1,共收录了20902个汉字,以及符号等,主要应用于简体中文环境。...
ANSI通常指的是特定地区的默认编码,如Windows系统中的GBK或ISO-8859-1,它通常只能表示有限的字符集。Unicode则是一个国际标准,包含了世界上几乎所有的字符,包括汉字、拉丁字母、希腊字母等,旨在统一各种字符...