`
anyitzy
  • 浏览: 10638 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

转来自: http://www.blogjava.net/jeff-lau/archive/2007/12/21/169257.html

 

中文排序 - 汉语拼音
摘要:中文一般都是按拼音来排序的。但Java中的String类是按Unicode编码存储数据的,因此,String类也是按Unicode编码的大小来排序的。Sun公司提供一个Collator类来重新按不同的规则对字符串排序,但Collator对中文的排序方式只是不严格的拼音排序法。Microsoft的Excel和Sql Server实现了按拼音排序的功能,就比Collator实现的好多了。那如何在Java中实现类似Microsoft的拼音排序的方式呢?


排序的方式主要有两种:一种是拼音,一种是笔画。本文就讲述如何实现这两种不同的比较器(Comparator)。


Unicode 编码中的汉字

Unicode中编码表分为两块,一个是基本的,一个是辅助的。现在的大多数操作系统还不支持Unicode中辅助区域中的文字,如WinXp。
在Java中的字符就是Unicode码表示的。对于Unicode基本区域中的文字,用两个字节的内存存储,用一个char表示,而辅助区域中的文字用4个字节存储,因此辅助区域中的就要用两个char来表示了(表一种蓝色底就是辅助区域中的文字)。一个文字的unicode编码,在Java中统一用codePoint(代码点)这个概念。
中文和日文、韩文一样是表意文字,在Unicode中,中日韩三国(东亚地区)的文字是统一编码的。CJK代表的就是中日韩。在这里,我把这3中文字,都作为汉字处理了。(日语和韩语可能就是从汉语中衍生的吧!)

 


GB2312编码

GB2312是中华人民共和国最早的计算机汉字编码方式。大概有6000多个汉字,这些汉字是按拼音顺序编码的。这6000多个汉字都是简体中文字。


GBK编码

GB2312的扩展,并兼容GB2312。扩展后的汉字大概有2万多个,其中有简体汉字也有繁体汉字。

 

分享到:
评论

相关推荐

    JS实现中文汉字按拼音排序的方法

    在JavaScript中,对中文汉字进行拼音排序是一项常见的需求,特别是在数据处理和用户界面展示时。以下将详细介绍如何使用JS实现中文汉字按拼音排序,并提供相关的操作技巧。 首先,JavaScript提供了`Array.prototype...

    汉语拼音与汉字一一对照表

    汉字与汉语拼音对照表,可供他人后期处理,用于数据排序,通过汉字查找拼音,也可以作为编写输入发的部分资料。

    汉字拼音排序

    汉字是中文的表意字符,每个汉字都有一个或多个对应的汉语拼音,这是基于拉丁字母的表示方式,用于读音。Unicode 是一种字符编码标准,包含了大量汉字,其中0x4e00到0x9fc0的范围主要涵盖了基本多文种平面(BMP)中...

    汉字拼音对应的unicode编码

    汉字转换成16进制对应的unicode编码,用于汉字拼音排序

    获取汉字汉语拼音首字母

    总的来说,获取汉字汉语拼音首字母是中文信息处理中的一个重要环节,涉及字符编码、字符串操作、拼音转换算法等多个方面,对于提升用户体验和提高系统性能具有重要意义。`pinyin.c`和`pinyin.h`文件提供了一个可能的...

    中文版汉字转汉语拼音

    这个“中文版汉字转汉语拼音”项目显然提供了这样的功能,它可能是一个JavaScript库,通过分析给定的文件`wordspell.js`来实现汉字到拼音的转换。 在JavaScript中,实现汉字转拼音的功能通常涉及到以下几个关键知识...

    汉语拼音字母表专项练习题.pdf

    这份资料主要针对的是汉语拼音的学习和复习,涵盖了拼音字母的大写和小写、字母排序、字母连线、字母对应以及查字典的基础知识。以下是对各部分知识点的详细说明: 一、字母大小写的转换: 题目要求写出小写字母...

    一年级汉语拼音练习卷(8套).pdf

    这份文件是一系列汉语拼音练习卷,供一年级学生使用。汉语拼音是汉语的拼音文字系统,它使用拉丁字母和一些附加符号来代表...学习汉语拼音对于初学汉语的学生来说至关重要,它是学习汉字的发音和进一步学习中文的基础。

    表格拼音列排序

    这涉及到汉字到拼音的转换技术,即汉语拼音转换。许多电子表格软件内置了这项功能,可以直接对汉字列进行拼音排序。例如,Excel的"数据"菜单中就有"排序"选项,可以选择“自定义排序”,然后在“列”选项中选择需要...

    C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母

    "C#汉字转拼音(npinyin)"是一个C#库,它提供了一个方便的方式来将汉字转换为对应的汉语拼音。"npinyin"库能够帮助开发者实现以下功能: 1. **全拼转换**:该库可以将每个汉字转换为其完整的拼音,包括声母、韵母和...

    根据汉字获取拼音,并能做比较

    汉字转拼音是将汉字转换为其对应的汉语拼音的过程,这是中文信息处理的基础之一。在Python中,有一个名为`pypinyin`的库可以实现这个功能。`pypinyin`库支持简体和繁体汉字的转换,能够输出各种拼音格式,包括普通...

    DELPHI 汉字转换拼音

    这一功能在多种场景下都非常实用,比如在开发支持中文环境的应用程序时,进行中文姓名的拼音排序、搜索或输入法辅助等。本文将详细解释该函数的工作原理、关键变量的作用以及具体的算法逻辑,以便于理解与复用。 ##...

    易语言拼音排序

    拼音排序是处理中文数据时常用的一种方法,特别是在需要按照汉语拼音字母顺序对姓名、地名或其他基于汉字的数据进行排序时。易语言提供了相应的函数来实现这一功能,这些函数包括取文本长度、取文本中间、取文本左边...

    中国汉字大全-拼音排序.doc

    这篇文档是一个收录了大量汉字并按照汉语拼音排序的资源。它可能是为了方便用户查找、学习或研究汉字而编纂的。拼音排序使得查找特定汉字变得简单,尤其对语言学习者、教师或是进行汉字编码工作的人员来说非常有用。...

    《汉语拼音1_a_o_e》教学课件PPT课件 (2).ppt

    汉语拼音是学习中文的基础工具,尤其对于非母语者来说,它是掌握中文发音的重要途径。本课件《汉语拼音1_a_o_e》专注于教授最基础的三个声母——a、o、e。这些音素是汉语拼音体系中的基本元素,为后续的声母、韵母和...

    IOS拼音排序

    在iOS开发中,拼音排序是一项常见的需求,尤其是在处理中文数据并需要按照汉字的拼音首字母进行展示时。本文将深入探讨如何在iOS应用中实现拼音排序,并提供相关的代码示例和资源。 首先,我们需要理解汉字与拼音...

    小学生入门汉语拼音.doc

    音序表包括26个大写字母:Aa到Zz,这对于查找汉字或者拼音排序非常有用。 此外,文档还强调了韵母表,这是汉语拼音的另一部分,包括基本元音和复韵母。韵母可以在音节中单独存在,也可以与声母组合,形成完整的音节...

    我国汉字大全-拼音排序.doc

    【我国汉字大全-拼音排序】这个文档主要是一个包含大量汉字并按照汉语拼音顺序排列的资源。这份文档对于学习、研究汉字或进行汉字教学具有很高的参考价值。它涵盖了从A到Z的各种汉字拼音首字母的汉字,包括单音节词...

    国标一级汉字(3755个,按拼音排序),国标二级汉字(3008个,按部首笔画排序)

    例如,通过拼音排序,我们可以看到汉字的音韵变化;而部首笔画排序则揭示了汉字的形体规律。在教学、研究或开发汉字输入法、搜索引擎时,这样的资源尤为实用。 总的来说,国标一级汉字和二级汉字的列表是学习汉字、...

Global site tag (gtag.js) - Google Analytics