字符与编码
文章平均质量分 60
炼气散人
等儿子高考后,或许会回来
展开
-
locale表示方法
locale的表示由三部分组成:语言,国家,字符集以及编码方式。通过命令locale来观察输出结果:$ localeLANG=en_US.UTF-8LANGUAGE=LC_CTYPE="en_US.UTF-8"LC_NUMERIC="en_US.UTF-8"LC_TIME="en_US.UTF-8"LC_COLLATE="en_US.UTF-8"LC_MONETARY="en_US.原创 2012-10-11 16:58:36 · 3147 阅读 · 0 评论 -
从string中将UTF-8编码解码成Unicode code point
上一篇UTF-8编码实测 中已经能够用boost.locale库将一个字符的UTF-8编码转换成Unicode code point.今天看了locale的部分代码,作者Artyom建议使用utf_to_utf函数搞定一切。我的需求是将string中所有的字符串的unicode code point都解析出来,似乎utf_to_utf名称并不合适。于是修改了Artyom的部分代码,现在首先看一下m原创 2013-02-06 23:12:10 · 6477 阅读 · 0 评论 -
UTF-8编码实测
本文打算用C++程序跟踪UTF-8字符的二进制格式。从实践上感受一下UTF-8的应用。开发环境是UBuntu12.04 32bit OS. GCC 4.6.3,系统字节顺序是little endian.如果有汉字‘一’,首先通过一个网站工具:http://rishida.net/tools/conversion/ 可以查到它的Unicode码是:0x4E00用UTF-8对0x4E00进行编码后是:原创 2013-02-05 21:33:40 · 5779 阅读 · 1 评论 -
UTF-8编码规则
UTF-8 全称是:Universal Character Set Transformation Format--8-bit。UTF-8是表示Unicode字符集中的每个字符的一种编码方式,采用变长编码,1-4字节。和UFF-16以及UTF-32相比,没有endianness和字节顺序掩码引发的复杂性。UFT-8广泛用于web,email,现在越来越多的操作系统支持它。Linux默认就是UFT-8原创 2013-02-04 20:43:40 · 5927 阅读 · 0 评论 -
Unicode 东亚字符
本文主要参考Unicode 6.2的文档ch12.pdf. 由于文档内容实在太多,仅摘出我理解的部分。基本思想就是Unicode中的东亚字符有一个统一的名称:CJK规范。而CJK的字符集合就是汉语象形字符集合,在Unicode中,汉语象形字符集已经包括了中,日,韩,越南,彝族等语言,规范来源子多个已经存在的字符集,比如中国的GB2312,香港,台湾,日本等。概述:1.在Unicode标准中,东亚字原创 2013-02-03 23:05:40 · 6975 阅读 · 2 评论 -
Unicode codespace
所有Unicode的code points集合称为codespace. codespace被划分为17个planes(平面)。0x0-0xFFFF 是第一个plane(plane 0),称为BMP. 包含了65536个code points,绝大多数字符都用这些code points表示。也包含了中文,日文和韩文字符,简称CJK.详细的可以参考wiki:http://en.wikipedia.or原创 2013-02-02 22:48:47 · 3787 阅读 · 0 评论 -
Unicode实现细节之code point
在我的前面的一片博客"几个基本字符集整理介绍" 中,曾经概念性的介绍了几个常用的字符集,也提到了Unicode字符集其实有几种编码方式。本文继续讨论Unicode的一些细节,对于实际编程工作更有帮助。首先理解一个基本概念,code point(或许中文叫代码点). 可以参考wiki:http://en.wikipedia.org/wiki/Code_pointcode point不同于point原创 2013-02-02 22:15:07 · 6112 阅读 · 0 评论 -
几个基本字符集整理介绍
ASCII 参考:http://zh.wikipedia.org/wiki/ASCIIAmerican Standard Code for Information Interchange,美国信息交换标准代码用一个字节表示128个字符,其中不可显示字符33个.33个字符中有一些是已经废除的控制字符。另外就是95个可显示字符。128个字符显然不够用,只能支持26个英文字母,阿拉伯数字和标点符号。具体原创 2012-04-13 14:55:18 · 3907 阅读 · 1 评论 -
locale相关环境变量
locale中文翻译成场所,地点。因为不同的地区的人的语言文化不一样。因此定义了一些环境变量来表达不同地区的差异。用linux命令man locale可以看到几个环境变量的介绍,下表简要说明:LC_CTYPECharacter classification and case conversion语言符号及其分类LC_COLLATECollation order比较和排序习惯LC_TIMEDate原创 2012-10-11 14:40:33 · 3025 阅读 · 0 评论 -
UTF-8解码
要想了解UTF-8编码规则,请参考我的文章:http://blog.csdn.net/sheismylife/article/details/8570015在我的另一篇文章"UTF-8编码实测" http://blog.csdn.net/sheismylife/article/details/8571726 中,我使用了boost::locale库的代码来解码UTF-8. 现在来仔细研究一下解码的原创 2013-06-12 21:00:49 · 4810 阅读 · 0 评论