- 浏览: 143388 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (129)
- framework (18)
- Java (25)
- web2.0 (7)
- Oracle (23)
- 框架师 (20)
- design pattern (5)
- j2ee (6)
- 日常问题收集 (51)
- linux (12)
- Oralce优化 (4)
- life (3)
- sqlplus (1)
- sql (2)
- C# (4)
- mysql (9)
- 拿来主义 (12)
- 标签 (0)
- ThinkPHP (1)
- python (1)
- mybatis (2)
- html5 (1)
- jquery (2)
- hadoop (3)
- git (1)
- struts2 (1)
- shiro (1)
- struts (1)
最新评论
-
xiao88xian:
...
jQuery常用经典技巧
今天开发了自己的第二个开源工具 jar包
名称:pinyin4j.jar
功能: 将汉语拼音转换为汉语拼音
算法:
从对应的资源文件中(文件中包含了常用汉字的unicode编码-拼音)
文件格式如下:
3007 (ling2)
4E00 (yi1)
4E01 (ding1,zheng1)
4E02 (kao3)
4E03 (qi1)
4E04 (shang4,shang3)
.
.
.
用数据流的方式读取 然后将unicode码以key,pinyin为value存入一个HashMap中
接口:
传入:汉语拼音的字符串
返回:拼音的字符串数组(即每个汉语拼音对应相应的拼音)
源码:
然后导出为jar包
测试一下:
新建一个java工程,然后将刚做好的jar包导入的工程中
新建一个test类
测试效果:
da4,dai4
dan4
shi4
guan1
jian4
de5,di4,di2
shi4
gai4
duo1
shao3,shao4
le5,liao3,liao4
gong1
ji1
duo1
shao3,shao4
遇到的问题,在导出jar包的时候出了很多错误
主要问题出在: 如何读取jar包中的资源文件 这个可以参考我收藏的一篇文章
名称:pinyin4j.jar
功能: 将汉语拼音转换为汉语拼音
算法:
从对应的资源文件中(文件中包含了常用汉字的unicode编码-拼音)
文件格式如下:
3007 (ling2)
4E00 (yi1)
4E01 (ding1,zheng1)
4E02 (kao3)
4E03 (qi1)
4E04 (shang4,shang3)
.
.
.
用数据流的方式读取 然后将unicode码以key,pinyin为value存入一个HashMap中
接口:
传入:汉语拼音的字符串
返回:拼音的字符串数组(即每个汉语拼音对应相应的拼音)
源码:
package com.anduo.pinyin4j; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.util.HashMap; public class PinYinHelper { private static HashMap<String, String> hashMap = new HashMap<String, String>(); /** * 将unicode-to-hanyu-pinyin.txt文件 以unicode为key pinyin为value 加到hashmap中 */ private static void myReader() { InputStream is = PinYinHelper.class.getClass().getResourceAsStream( "/resource/unicode_to_hanyu_pinyin.txt"); BufferedReader breader = new BufferedReader(new InputStreamReader(is)); String s; String unicode; String pinyin; try { while ((s = breader.readLine()) != null) { // 提取文件流每行中的unicode码以及 pinyin字符串 unicode = s.substring(0, 4); pinyin = s.substring(6, s.length() - 1); hashMap.put(unicode.toLowerCase(), pinyin); } } catch (IOException e) { e.printStackTrace(); } } /** * 将汉语转换为汉语拼音 * * @param value * @return pinyin[] */ public static String[] toHanYuPinYin(String value) { myReader(); String[] result = new String[value.length()]; String unicode; String pinyin; for (int i = 0; i < value.length(); i++) { Character c = value.charAt(i); unicode = Integer.toHexString(c);// 得到汉字的unicode编码 pinyin = hashMap.get(unicode);// 从hashMap中找到汉子的拼音 result[i] = pinyin; } return result; } }
然后导出为jar包
测试一下:
新建一个java工程,然后将刚做好的jar包导入的工程中
新建一个test类
package com.anduo; import com.anduo.pinyin4j.PinYinHelper; public class test { public static void main(String[] args) { String s[] = PinYinHelper.toHanYuPinYin("大但是关键的是概多少了攻击多少"); for (String string : s) { System.out.println(string); } } }
测试效果:
da4,dai4
dan4
shi4
guan1
jian4
de5,di4,di2
shi4
gai4
duo1
shao3,shao4
le5,liao3,liao4
gong1
ji1
duo1
shao3,shao4
遇到的问题,在导出jar包的时候出了很多错误
主要问题出在: 如何读取jar包中的资源文件 这个可以参考我收藏的一篇文章
- jianfan4j.jar (94.8 KB)
- 下载次数: 21
发表评论
-
使用OSCache实现页面的缓存,优化性能
2013-07-10 14:21 1048使用OSCache实现页面的缓存,优化性能 OSC ... -
BigDecimal不整除的一个异常java.lang.ArithmeticException: Non-terminating decimal expansi
2013-03-26 10:34 1585金额的数据类型是BigDec ... -
解决subclipse报错:svn: Can't open file 'D:\project\Xxx.java.svn-base': 系统找不到指定的文件
2013-03-23 16:49 1952环境为:XP, eclipse, subclipse。 我想 ... -
hibernate4+spring3.1整合常见问题解决方法
2013-03-21 19:21 807由于目前网上很少有关于hibernate4+spring3. ... -
JAVA String.format 方法使用介绍(生成序列号的时候很有用哦)
2013-03-21 10:39 1279JAVA String.format 方法使 ... -
Ant-Ivy使用
2013-02-21 12:27 1068转至:http://blog.csdn.net/leon70 ... -
Java时间处理
2013-01-17 17:33 7961.获得当前系统时间 首先System ... -
no jacob in java.library.path错误的解决
2013-01-15 11:25 958一般把jacob.dll(不同版本的jacob的dll文件名 ... -
java合并几个图片
2013-01-08 15:39 872package com.anduo.web; im ... -
JDK 1.6 API 中英文版 在线版、下载地址
2013-01-05 10:38 1367JDK 1.6 API(全) * HTML 格式(在线英 ... -
JAVA String.format方法使用介绍
2013-01-04 12:28 826转至:http://soft.chinab ... -
java中byte数组与int,long,short间的转换
2012-12-26 14:07 942开发问题收集 package com.util; ... -
通过知道的class文件得到该文件所在的jar包
2012-09-18 14:23 748String path = XXX.class.getP ... -
利用java内置库的HashMap统计字符串中单词出现的个数问题
2011-05-14 20:16 683没什么好说的,我就直接把代码放上面吧: package co ... -
classpath、path、JAVA_HOME的作用
2011-11-05 14:13 947CLASSPATH是什么? ... -
JAVA基础巩固加强 enhance day1
2011-11-07 18:52 918最近忙着找工作,可是总是到最后面试完了就没信儿了。哎,你说找个 ... -
JAVA基础巩固加强 enhance day1反射 reflect
2011-11-07 20:58 843以前一直只知道有reflect ... -
如何用jdbc连接数据库 java连接数据库的五步
2011-06-09 22:18 1458用JDBC连接数据库 本文用sqlserver2000 ... -
Java 完全面向对象的贪吃蛇游戏
2011-05-09 10:08 1043JavaSE的项目:贪吃蛇( ... -
利用java内置库的HashMap统计字符串中单词出现的个数问题
2011-05-14 20:16 2533没什么好说的,我就直接把代码放上面吧: package c ...
相关推荐
使用pinyin4j库非常简单,只需在项目中引入jar包,然后通过其提供的API即可进行拼音处理。例如,以下代码演示了如何将汉字转化为拼音: ```java import net.sourceforge.pinyin4j.PinyinHelper; public class ...
1. **添加依赖**:如果你的项目是基于Maven构建的,你可以将`pinyin4j-2.5.0.jar`放入本地Maven仓库,并在`pom.xml`文件中添加相应的依赖。这样,其他模块就可以通过Maven自动管理`pinyin4j`的导入。 ```xml ...
其最新版本为2.5.0,该版本的主jar包即为“pinyin4j-2.5.0.jar”。这个库不仅提供了基本的汉字转拼音功能,还支持声调、多音字处理等复杂情况,使得开发者能够更加灵活地处理中文字符。 在pinyin4j库中,`PinYin4...
首先,你需要将提供的`pinyin4j.jar`文件引入到你的项目类路径中。然后,你可以通过`net.sourceforge.pinyin4j.PinyinHelper`类来调用各种转换方法。例如,使用`toHanyuPinyinStringArray(char[])`可以将字符数组...
pinyin4j的最新jar包提供了高效且准确的汉字转拼音功能,是开发者们进行汉字处理时的得力助手。 pinyin4j的核心功能在于,它可以将单个汉字或字符串中的所有汉字转换为其对应的汉语拼音。例如,“中国”会被转换为...
本文将详细介绍pinyin4j-2.5.0.jar这个jar包以及如何使用它来实现汉字转拼音的功能。 pinyin4j是一个开源的Java库,由Barry de Graaff创建,它的主要功能是提供汉字到拼音的转换服务。在pinyin4j-2.5.0.jar这个版本...
《深入理解pinyin4j-2.5.0:jar包、源码与说明文档解析》 在Java编程中,处理汉字转化为拼音的任务是常见需求,pinyin4j作为一个强大的开源库,为开发者提供了便捷的解决方案。本文将围绕pinyin4j-2.5.0的jar包、...
要在项目中使用pinyin4j,首先需要将`pinyin4j-2.5.0.jar`文件添加到项目的类路径中。对于Maven用户,可以在pom.xml文件中添加以下依赖: ```xml <groupId>com.belerweb</groupId> <artifactId>pinyin4j ...
《pinyin4j-2.5.0.jar:Java与Kotlin中的拼音处理库》 在Java和Kotlin编程中,处理汉字转拼音的需求时有发生,比如在搜索引擎的关键词提取、文本排序或中文输入法的实现等场景。为此,开发者们常常需要借助一些专门...
1. 引入库:首先,需要在项目中引入pinyin4j的JAR包,可以通过Maven或Gradle等构建工具添加依赖,或者直接下载JAR文件添加到项目的类路径中。 2. 导入类:使用pinyin4j需要导入以下核心类: ```java import ...
《关于pinyin4j-2.5.1.jar与Java拼音处理库的解析与应用》 在Java开发中,处理中文字符转化为拼音是一项常见的任务,这时我们常常会使用到pinyin4j这个开源库。然而,如果在项目中遇到"The import ...
本文将详细探讨pinyin4j-2.5.0.jar这个Java汉字转拼音的jar包,包括其核心功能、使用方法以及实际应用中的示例代码。 一、pinyin4j概述 pinyin4j是一个轻量级的Java库,它提供了高效且灵活的汉字转拼音功能。该库...
在实际开发中,pinyin4j-2.5.0.jar常被用于搜索引擎的构建,通过拼音转换提升搜索的覆盖率和准确性。在地址处理上,它可以将地名标准化,便于地理位置的匹配和索引。而在人名处理上,pinyin4j则有助于实现基于拼音的...
pinyin4j是2.5.0版本的jar包,它包含了一个已经封装好的类,可以直接对汉字进行拼音转换,无论是全拼还是首字母,都可以轻松实现。虽然作者自谦地表示封装类写得一般,但它的实用性和易用性仍然值得我们肯定。对于...
Pinyin4j的基本用法 1. 简单介绍 有时候,需要将汉字编程对应的拼音,以方便数据的处理。比如在Android手机应用的开发上,要查询联系人的姓名,通常都是用拼音进行查询的。比如要查询“曹孟德”,就可以输入“cmd”...
pinyin4j-2.5.0.jar正是这样一个专门用于Java环境下实现汉字转拼音功能的库,它为开发者提供了便捷的API,大大简化了开发过程。 pinyin4j是Java平台上的开源库,由Barry DeZeng开发,其主要功能是将汉字转换为汉语...