unicode中对于中文是使用“中日韩越统一表意文字”来储存的,其意思就是对中文,日本,韩文,越南文中有类似于中文这样形式或稍微有点不同的表意文字,都被统称成中日韩越统一表意文字 CJKV (主要为汉字、仿汉字如方块壮字、日本国字、韩国独有汉字、越南的喃字)。
所以,对于中文这种表意形的文字在unicode中是简繁混杂的甚至于还夹杂着别的国家的文字,使用我们常在输入判断时无法通过一个范围区间来判断或表达输入是否为简体中文。
其实对于一般的输入,对于表意文字的区间就可以了 4E00-9FFF 这对于绝大部分用户都是适合的,如果,你非得执着于只针对简体中文,那么就只能求助于gb2312了。
GB 2312 或 GB 2312-80 是中国国家标准简体中文字符集,全称《信息交换用汉字编码字符集·基本集》,又称GB0,由中国国家标准总局发布,1981年5月1日实施。GB2312编码通行于中国大陆;新加坡等地也采用此编码。中国大陆几乎所有的中文系统和国际化的软件都支持GB 2312。
GB 2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个字符。
GB 2312的出现,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆99.75%的使用频率。
对于人名、古汉语等方面出现的罕用字,GB 2312不能处理,这导致了后来GBK及GB 18030汉字字符集的出现。
gb2312是比较老的一个编码,但这里面全是简体中文,可惜的是这里的文字在unicode编码中不是全部连续的。无法或很难用一个正则来写出这个区间。但也不是没有办法去判断,6千多个文字已经有人把它的gbk码和unicode码做了映射。你可以用个list或map装载这个映射,再对输入文字进行配对判断。也许有人会认为这样效率会很低。但我想,如果你用map来装载unicode和字符的映射,每次对字符进行判断时,他都是对字符转成unicode进行hash运算再去找相应的地址,不需要一个个来比对的,效率应该是差不到哪去,只是费点内存而以,当然,这是我自己想当然的,没做过实验,谁要有做过实验的也请麻烦告下我结果。
下面是网上转载的一个unicode和gb2312的编码映射6763个汉字,我粗略的和unicode对照了下,应该是没错的,贴出来,给那些需求的人们一个查找的地方
内容太长,贴不全,以附件上传
0x4E00, /* GB2312 Code: 0xD2BB ==>一 Row:50 Col:27 */
0x4E01, /* GB2312 Code: 0xB6A1 ==>丁 Row:22 Col:01 */
……
分享到:
相关推荐
综上所述,Notepad++(UNICODE)简体中文版是中文开发者理想的文本编辑工具,它不仅具备基本的文本编辑功能,还具备高级的编程特性,同时解决了中文字符的显示问题,使其在处理中文编码的项目时表现优异。...
Unicode的主要目标是解决传统编码方案中存在的各种问题,如字符集不兼容、多语言环境下的编码冲突等。 #### 二、UCS-2与UCS-4 - **UCS-2**(Unicode Character Set, 2-byte):这是一种使用两个字节(16位)来表示...
Delphi演示如何实现UniCode编码、汉字的繁简互转功能,同时将字符转换为unicode码值(十六进制): 常用编码: codepage=936 简体中文GBK codepage=950 繁体中文BIG5 codepage=437 美国/加拿大英语 code...
在计算机科学领域,字符编码是将文字转换为数字表示的过程...《GB2312简体中文编码表.docx》、《Unicode汉字编码表.doc》和《特殊符号UNICODE码.docx》这些文档将提供详细的数据,帮助读者深入理解并应用这些编码系统。
其中,Unicode和GBK是两种广泛使用的字符编码系统,特别针对中文汉字的处理。Unicode是一个全球统一的标准,而GBK是中国特定的编码标准,两者都包含了大量的中文字符,但有各自的特点和适用范围。 **Unicode**,...
Unicode为这两种中文都提供了全面的支持,无论简体还是繁体,都能在Unicode编码表中找到对应的码点。 在提供的HTML文件中,你可以找到ASCII码表和Unicode中韩编码表。ASCII码表将帮助你了解基本的英文字符如何被...
中文字符在Unicode中的表示通常是一个或两个字节,对于简体中文,大部分字符的码点位于Unicode的 BMP(基本多文种平面)内,即U+4E00到U+9FFF之间。 在Java中,Unicode编码主要通过字符串对象的`char`类型来实现。...
本文介绍了Unicode编码的基本概念以及常用汉字的Unicode编码,并探讨了这些编码在验证码生成中的应用价值。通过利用Unicode编码的优势,不仅可以提高验证码的安全性,还能增强用户体验。未来随着Unicode标准的不断...
乱码问题是字符集转换过程中常见的问题之一,尤其是在GBK与Unicode这种常用但又有所区别的字符集间转换时。通过正确理解字符集的原理、使用适当的工具和技术手段、以及严谨的测试流程,可以有效地避免和解决乱码问题...
在IT行业中,理解和掌握汉字编码对于处理中文字符的存储、传输和显示至关重要。本文将深入探讨GB18030、GBK、Unicode这三种汉字编码以及它们在编程中的应用。 首先,让我们了解一下GB18030编码。GB18030是中国国家...
在实际应用中,这可能对解决乱码问题、编程实现编码转换函数或者进行跨平台的数据交换都有极大的帮助。 总之,GBK和Unicode都是为了解决中文字符编码的问题而诞生的,各有其适用场景。GBK在旧的中文系统中占有...
了解这些编码方式有助于在开发过程中解决字符乱码问题,特别是在处理不同编码格式的文件或数据交换时。例如,如果你在一个只支持GBK编码的系统中收到一个使用Unicode编码的文本,你需要先将文本转换为GBK才能正确...
### 通过对字符的Unicode编码进行判断来确定字符是否为中文 在计算机编程中,经常需要对文本中的字符进行处理和判断...总之,通过Unicode编码判断字符是否为中文字符的方法简单而有效,可以在各种应用程序中广泛使用。
2. **自然语言处理**:在NLP领域,例如中文分词、情感分析等任务中,需要对汉字进行精确识别和处理,Unicode编码提供了统一的编码标准,而拼音则有助于理解和分析汉字的语义和发音特征。 3. **教育领域**:在学习...
在计算机中,中文字符的表示通常使用Unicode编码,它包含了繁体字和简体字。Unicode是国际标准,可以表示世界上大部分文字系统,包括GBK、Big5(常用于繁体中文)和UTF-8等编码方式。 Java中的`java.text`包提供了...
这些编码方式各有特点,各有应用场景,理解它们有助于在处理中文字符时避免乱码问题。 首先,让我们来详细了解这些编码体系: 1. **GB2312**:全称为“汉字机内码交换码”,是中国大陆于1980年制定的汉字编码标准...
Unicode 的目标是兼容现有的字符编码体系,并消除由于编码差异导致的乱码问题。Unicode 包含了大量的汉字,确保了在国际化的软件和网络中,中文字符能够被正确识别和处理。 汉字转换则涉及到将汉字编码为其他格式,...