项目正好用到要获取汉字的拼音码,从网上搜索到的一个工具类。
-
packagecom.util;
-
-
importjava.io.UnsupportedEncodingException;
-
-
publicclassPinyinUtil{
-
-
staticfinalintGB_SP_DIFF=160;
-
-
staticfinalint[]secPosValueList={1601,1637,1833,2078,2274,2302,
-
2433,2594,2787,3106,3212,3472,3635,3722,3730,3858,4027,
-
4086,4390,4558,4684,4925,5249,5600};
-
-
staticfinalchar[]firstLetter={'a','b','c','d','e','f','g','h',
-
'j','k','l','m','n','o','p','q','r','s','t','w','x',
-
'y','z'};
-
-
-
-
-
-
-
publicstaticStringgetFirstLetter(StringoriStr){
-
Stringstr=oriStr.toLowerCase();
-
StringBufferbuffer=newStringBuffer();
-
charch;
-
char[]temp;
-
for(inti=0;i<str.length();i++){
-
ch=str.charAt(i);
-
temp=newchar[]{ch};
-
byte[]uniCode=newString(temp).getBytes();
-
if(uniCode[0]<128&&uniCode[0]>0){
-
buffer.append(temp);
-
}else{
-
buffer.append(convert(uniCode));
-
}
-
}
-
returnbuffer.toString();
-
}
-
-
-
-
-
-
-
publicstaticCharactergetFirstLetter(charch){
-
-
if((ch>='a'&&ch<='z')){
-
returnch;
-
}elseif(ch>='A'&&ch<='Z'){
-
return(char)(ch+32);
-
}
-
-
byte[]uniCode=null;
-
try{
-
uniCode=String.valueOf(ch).getBytes("GBK");
-
}catch(UnsupportedEncodingExceptione){
-
e.printStackTrace();
-
returnnull;
-
}
-
if(uniCode[0]<128&&uniCode[0]>0){
-
return'#';
-
}else{
-
returnconvert(uniCode);
-
}
-
}
-
-
-
-
-
-
-
staticcharconvert(byte[]bytes){
-
charresult='-';
-
intsecPosValue=0;
-
inti;
-
for(i=0;i<bytes.length;i++){
-
bytes[i]-=GB_SP_DIFF;
-
}
-
secPosValue=bytes[0]*100+bytes[1];
-
for(i=0;i<23;i++){
-
if(secPosValue>=secPosValueList[i]
-
&&secPosValue<secPosValueList[i+1]){
-
result=firstLetter[i];
-
break;
-
}
-
}
-
returnresult;
-
}
-
-
}
注:由于作者不是是谁,所以此文没注名出处!
分享到:
相关推荐
### 获取汉字拼音码首字母的工具类:深入解析与应用 #### 核心知识点概览 在本篇文章中,我们将详细探讨一个专门用于提取汉字拼音首字母的Java工具类——`StringUtil`。此工具类的核心功能是将输入的字符串中的每...
"安卓获取汉字拼音首字母工具类封装"就是一个这样的解决方案,它提供了一种便捷的方式来处理汉字与拼音之间的转换,以适配与IndexBar-master这种通讯录开源控件的配合使用。 首先,我们要理解工具类在编程中的作用...
标题“获取汉字的拼音”所指的是一种技术或类库,它能帮助开发者实现这个功能。描述中提到,这是一个类库,只需要将其集成到自己的程序中,就可以自动获取汉字的拼音,并且提供了详细的使用说明。 “汉字转换成拼音...
总的来说,Oracle中获取汉字拼音和拼音首字母涉及了字符编码、Java编程、自定义函数、第三方工具等多个方面。开发者可以根据具体的需求和环境,选择合适的方法来实现这一功能。在处理过程中,要注意字符集的兼容性、...
java中根据汉字字符串获取拼音首字母工具类
本篇文章将深入探讨如何在C#环境下获取汉字的五笔码和拼音码。 首先,五笔码是基于五笔字型编码方案的一种汉字编码方式,由四个或五个基本笔画组成,如“王”字的五笔码为“wng”,“大”字的五笔码为“vty”。五笔...
本文将深入探讨如何使用C#获取汉字拼音首字母这一知识点,不仅会解析给定代码片段的意义,还会扩展讲解相关的理论背景和技术实现。 ### C#获取汉字拼音首字母的原理 在计算机科学中,汉字的编码通常使用Unicode...
C#中可以使用开源库如Pinyin4net或自定义算法来获取汉字的拼音。自定义算法通常基于汉字的字典数据,通过查找对应关系来转换。 "PinYin.cs"文件很可能是实现了这个汉字转拼音功能的核心代码。在这个类中,可能会...
首先,`PinYinUtil.java`是一个自定义的汉字转拼音工具类,通常由开发者根据实际需求编写。这个类可能包含了各种转换方法,例如将单个汉字转化为拼音,或者将整段中文文本转化为拼音字符串。其中,核心方法可能包括`...
Java中的汉字拼音工具包主要服务于程序开发,尤其是前端开发,用于处理汉字与拼音之间的转换,这对于构建具有中文支持的应用或网站至关重要。这类工具包能够帮助开发者轻松地将汉字转换为对应的拼音,便于进行搜索、...
Java中,可以使用开源库,如Pinyin4j,来获取汉字的拼音。Pinyin4j提供了API,能够将单个汉字转换为对应的拼音,支持声母、韵母和声调。 对于部首,这是汉字结构分析的一部分。部首是汉字的基本构造单元,通常用于...
### C# 汉字转全拼音工具类详解 #### 一、概述 在软件开发过程中,有时我们需要处理中文字符并将其转换为拼音形式。这种需求常见于输入法软件、语音识别系统、文本分析工具等领域。C# 提供了多种方式来实现汉字到...
在Oracle数据库中实现获取汉字拼音首字母的需求,通常涉及到对中文字符的处理以及拼音转换的技术。这样的功能可以应用于多种场景,例如数据排序、索引建立或是快速检索等。本文将详细介绍如何在Oracle环境中实现这一...
ccs2Pinyin : 汉字转拼音 ccs2Pinyin : 汉字转拼音 getPinyinFirstLetter : 获取第一个汉字首字母 getPinyinFirstLetters: 获取所有汉字的首字母 getSurnamePinyin : 根据名字获取姓氏的拼音 getSurnameFirstLetter:...
这个“拼音工具类(汉字转拼音)”就是一个专门解决此类问题的实用工具,它提供了将汉字转换为拼音的能力。下面我们将详细探讨这个工具类的实现原理和相关知识点。 首先,我们要明白汉字转拼音的基本概念。汉字转拼音...
在Java编程语言中,开发一个汉字转拼音(包含首字母)的工具类是一项常见的任务,尤其是在处理中文字符串、搜索引擎优化(SEO)或者构建用户友好的URL时。这个工具类可以帮助程序将汉字转换为对应的拼音表示,同时...
这个工具包使得开发者能够轻松地获取汉字的拼音码,极大地提高了开发效率。 “pinyin4j拼音码获取”这一主题,主要涵盖了以下几个核心知识点: 1. **汉字转拼音**:pinyin4j的核心功能是将汉字转换为其对应的拼音...
本项目提供的"汉字拼音码五笔码首字母自动生成类"是一个高效实用的工具,旨在帮助开发者快速实现对汉字的拼音码和五笔码的查询功能。下面将详细解释这个类的工作原理、使用场景以及涉及的相关技术。 首先,我们要...
本文将深入探讨一个C#案例,即“自动获取汉字拼音首字母”的功能实现。这个功能在很多应用场景中都非常有用,例如搜索引擎优化(SEO)、中文信息处理或者用户输入的简拼匹配等。 在C#中,实现这一功能需要利用到...
Java中的汉字转拼音工具类主要用于将汉字转换为其对应的汉语拼音,尤其在处理中文数据时非常有用,例如在生成英文URL、关键词分析或者搜索索引时。这类工具通常基于开源库,如Pinyin4j,HanyuPinyin,或者自定义实现...