字符、字节与编码
--------------siwuxie095
字节(Byte)
字节是通过网络传输信息 或在硬盘(或内存)中存储信息的单位,是计算机
信息技术用于计量存储容量和传输容量的一种计量单位
1个字节等于8位二进制,即一个8位的二进制数,是一个很具体的存储空间
如:0x01,0x45,0xFA …
字符(Char)
字符是人们使用的记号,是抽象意义上的一个符号
如:'1','中','a','$','¥' …
字符集(Charset)
"字符集" 也称作 "编码"
各个国家和地区所制定的不同 ANSI 编码标准中,都只规定了各自语言所需的 "字符"
如:汉字标准(GB2312)中没有规定韩国语字符怎样存储
这些 ANSI 编码标准所规定的内容有两层含义:
(1)使用那些字符。即 哪些汉字、字母和符号会被收入标准中。
所包含 "字符" 的集合就叫做 "字符集"
(2)规定每个字符分别用一个字节还是多个字节存储,用哪些字节来存储,
这个规定就叫做 "编码"
各个国家和地区在制定编码标准的时候,"字符的集合" 和 "编码" 一般都是同时制定的
因此,平常所说的 "字符集",如:GB2312、GBK、JIS等,除了有
"字符的集合" 这层含义外,同时也包含了 "编码" 的含义
ANSI
字符串 在内存中,如果 "字符" 是以 ANSI 编码形式存在的,一个字符可能
使用一个字节或多个字节来表示,称这种字符串为 ANSI 字符串 或 多字节
字符串。
不同 ANSI 编码所规定的标准不同,因此,对于一个给定的多字节字符串,
必须知道它采用的是哪一种编码规则,才能知道它包含哪些 "字符"
UNICODE
字符串 在内存中,如果 "字符" 是以 UNICODE 中的序号存在的,称这种字符串
为 UNICODE 字符串 或 宽字节字符串
对于 UNICODE 字符串来说,不管在什么环境下,它所代表的 "字符" 内容总是
不变的
用来给 UNICODE 字符集编码的标准有很多种,如:UTF-8,UTF-7,UTF-16,
UnicodeLittle,UnicodeBig 等
无论操作任何形式的数据,都可以使用读写字节的方式来实现
但是,如果操作的是文本数据,需要使用字符来操作它,一旦
涉及到字符,就需要为当前的字符指定编码,否则可能会乱码
【made by siwuxie095】
posted on 2017-03-25 15:27 siwuxie095 阅读(174) 评论(0) 编辑 收藏 举报