`
dwj147258
  • 浏览: 194050 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

通过pinyin4j将汉字转换为拼音

阅读更多

pinyin4j提供了汉语转拼音的一个开源库, 支持多种拼音系统:汉语拼音、 通用拼音 、威氏拼音、注音二式、雅礼、 
国语罗马字。

  但是遗憾的是不支持多音字

  首先下载jar包:http://pinyin4j.sourceforge.net/

package ceshiOA;

import net.sourceforge.pinyin4j.PinyinHelper;
import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

public class PingyinUtils {
     
    /**   
     * 汉字转换为汉语拼音首字母,英文字符不变   
     * @param chines 汉字   
     * @return 拼音
     */     
    public static String converterToFirstSpell(String chines){              
         String pinyinName = "";   
          
         //转化为字符
         char[] nameChar = chines.toCharArray();
//         for(int i=0;i<nameChar.length;i++){
//           System.out.println(nameChar[i]);
//         }
          
         //汉语拼音格式输出类   
         HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();
          
         //输出设置,大小写,音标方式等   
         defaultFormat.setCaseType(HanyuPinyinCaseType.LOWERCASE);       
         defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);       
          
         for (int i = 0; i < nameChar.length; i++) {       
             //如果是中文
             if (nameChar[i] > 128) {
                try {       
                     pinyinName += 
                           PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0].charAt(0);       
                 } catch (BadHanyuPinyinOutputFormatCombination e) {       
                     e.printStackTrace();       
                 }       
             }else{//为英文字符    
                 pinyinName += nameChar[i];       
             }       
         }       
        return pinyinName;       
     }       
         
    /**   
     * 汉字转换位汉语拼音,英文字符不变   
     * @param chines 汉字   
     * @return 拼音   
     */     
    public static String converterToSpell(String chines){               
        String pinyinName = "";       
        char[] nameChar = chines.toCharArray();       
        HanyuPinyinOutputFormat defaultFormat = new HanyuPinyinOutputFormat();       
        defaultFormat.setCaseType(HanyuPinyinCaseType.UPPERCASE);       
        defaultFormat.setToneType(HanyuPinyinToneType.WITHOUT_TONE);       
        for (int i = 0; i < nameChar.length; i++) {       
            if (nameChar[i] > 128) {       
                try {       
                     pinyinName += PinyinHelper.toHanyuPinyinStringArray(nameChar[i], defaultFormat)[0];       
                 } catch (BadHanyuPinyinOutputFormatCombination e) {       
                     e.printStackTrace();       
                 }       
             }else{       
                 pinyinName += nameChar[i];       
             }       
         }       
        return pinyinName;       
     }       
            
    public static void main(String[] args) {       
        System.out.println(converterToFirstSpell("长城有限公司"));
        System.out.println(converterToSpell("汉语拼音").toLowerCase());
     }       
}

 输出:

zcyxgs //长是多音字,打成了zhang

hanyupinyin

 

 

分享到:
评论

相关推荐

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

    - **数据分析**:在分析中文文本时,转换拼音可以帮助进行词频统计、关键词提取等任务。 在使用"C#汉字转拼音(npinyin)"之前,开发者需要确保安装了这个库,可以通过NuGet包管理器来添加依赖。在代码中,可以先引入...

    IDEA将汉字转换为拼音首字母缩写的插件

    简介:自己写的IDEA插件,可以将汉字转换为拼音缩写的插件,有需要的可以下载玩玩。 用法:下载之后正常进行插件安装,安装之后在Edit菜单里面会出现ChineseToPY选项,选中文字之后点击这个选项就可以将所选的文字...

    Delphi 成批将汉字转换为拼音码、五笔简码

    Delphi 成批将汉字转换为拼音码、五笔简码 Delphi 通过查询资源文件 wbtext.rec 得到编码,得到汉字的五笔、拼音编码 (支持 7500个简体、繁体汉字)  1、批量将汉字转换为拼音码、拼音简码、五笔码、五笔简码。 ...

    oracle将汉字转换成拼音

    可以将oracle数据库中保存的中文转换成拼音,拼音首字母等

    Oracle将汉字转换为拼音的方法

    总结来说,Oracle通过`UTL_I18N`包中的`RAWTOCHAR`函数提供了将汉字转换为拼音的基本功能,虽然不能保证处理所有汉字,但对于大部分常见汉字的转换是可行的。如果需要更完善的汉字拼音转换服务,可能需要结合其他...

    使用pinyin4j将中文转换为拼音

    《使用pinyin4j将中文转换为拼音》 在处理中文文本时,有时我们需要将汉字转化为拼音,以便进行关键词检索、语音合成或者数据分析等任务。pinyin4j是一个非常实用的Java库,它能帮助我们方便地实现这个功能。本文将...

    汉字转换拼音 java

    例如,使用Pinyin4j库,只需引入依赖,然后通过调用特定方法,就能快速地将汉字转换为拼音。下面是一个简单的示例: ```java import net.sourceforge.pinyin4j.PinyinHelper; public class HanziToPinyin { ...

    数据库中将汉字转换成拼音

    自定义函数,将汉字转换成每个汉语拼音的首字母

    汉字转换为拼音,取汉字的拼音首字母

    在Java项目中,引入`pinyin4j`库可以方便地将汉字转换为拼音,从而进行各种基于拼音的处理。 **3. 使用pinyin4j库进行汉字转拼音** 使用`pinyin4j`库时,首先需要在项目中引入该库的jar包。在这个案例中,已提供了...

    将汉字转换成拼音 java 源码

    - **Pinyin4j** 是一个强大的Java库,主要用于将中文汉字转换为拼音,同时支持多种配置选项来调整输出格式。 - 这个库提供了一系列工具类和枚举类型来帮助开发者定制拼音的输出方式,例如是否带有声调、拼音首字母大...

    jQuery中文转换成拼音代码

    在IT领域,jQuery中文转换成拼音的代码是一个实用的功能,尤其在处理中文数据时非常有用。这个功能可以将用户输入的中文字符转化为对应的拼音,同时还能生成中文汉字的唯一编号。这种技术在诸如搜索引擎优化(SEO)...

    Mysql中文汉字转拼音的实现(每个汉字转换全拼)

    总之,通过创建拼音对照表和自定义函数,可以在MySQL中实现中文汉字到拼音的转换,但这种方法简单且适用于小规模的场景。对于大规模或复杂的汉字转拼音需求,可能需要结合其他工具和技术来实现。

    拼音转换成汉字

    拼音转换成汉字的好工具 拼音转换成汉字的好工具

    探索PinYin4j.jar将汉字转换为拼音的基本用法

    将汉字转换为拼音在Android开发中是个很常见的问题。例如:在Android手机应用开发中,要查询联系人的姓名,通常都是用拼音进行查询的。 Pinyin4j是一个功能强悍的汉语拼音工具包...- 支持简体中文、繁体中文转换为拼音

    pinyin4J java拼音转换工具

    pinyin4J java拼音转换工具 java汉字转换拼音工具

    拼音4j 基本用法

    拼音4j是一个专门用于处理中文拼音的Java库,它为开发者提供了方便快捷的接口,以便在程序中进行汉字与拼音的转换、拼音排序等操作。在Java开发中,如果需要处理中文字符的拼音信息,拼音4j是一个值得考虑的工具。...

    汉字转拼音_汉字转拼音Excel_

    在IT领域,尤其是在数据分析和编程工作中,有时候我们需要将汉字转换为拼音,以便进行进一步的处理。例如,在使用Stata这样的统计分析软件时,如果数据中含有汉字,可能会影响到某些基于字母或拼音的操作。这时,...

    pinyin支持汉字转换拼音,汉字转换拼音缩写

    标题"pinyin支持汉字转换拼音,汉字转换拼音缩写"表明这是一个关于汉字到拼音转换的工具或库,同时它还具备将汉字转换为拼音缩写的功能。 汉字转换拼音的原理通常基于汉语拼音方案,这是中国国家标准,规定了每个...

    汉语转换成拼音的jar包pinyin4j-2.5.0版本

    `pinyin4j`库的核心功能是将汉字转换为汉语拼音。这个过程涉及到多个方面,包括识别多音字、处理声调以及提供不同的拼音输出格式。例如,对于汉字"好",`pinyin4j`可以输出"haο"(无声调形式)或"hǎo"(带声调形式...

Global site tag (gtag.js) - Google Analytics