`

java 将汉字转换为全拼及返回中文的首字母

阅读更多

package com.tjp.test;

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.HanyuPinyinVCharType;
import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;

public class CnToSpell {
    // 将汉字转换为全拼
    public static String getPingYin(String src) {

        char[] t1 = null;
        t1 = src.toCharArray();
        String[] t2 = new String[t1.length];
        HanyuPinyinOutputFormat t3 = new HanyuPinyinOutputFormat();
        t3.setCaseType(HanyuPinyinCaseType.LOWERCASE);
        t3.setToneType(HanyuPinyinToneType.WITHOUT_TONE);
        t3.setVCharType(HanyuPinyinVCharType.WITH_V);
        String t4 = "";
        int t0 = t1.length;
        try {
            for (int i = 0; i < t0; i++) {
                // 判断是否为汉字字符
                if (java.lang.Character.toString(t1[i]).matches(
                        "[\\u4E00-\\u9FA5]+")) {
                    t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);
                    t4 += t2[0];
                } else
                    t4 += java.lang.Character.toString(t1[i]);
            }
            // System.out.println(t4);
            return t4;
        } catch (BadHanyuPinyinOutputFormatCombination e1) {
            e1.printStackTrace();
        }
        return t4;
    }

    // 返回中文的首字母
    public static String getPinYinHeadChar(String str) {
        String temp = "";
        String demo = "";
        String convert = "";
        for (int j = 0; j < str.length(); j++) {
            char word = str.charAt(j);
            String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
            if (pinyinArray != null) {
                convert += pinyinArray[0].charAt(0);
            } else {
                convert += word;
            }
        }
        for(int i=0;i<convert.length();i++){//convert目前为小写首字母,下面是将小写首字母转化为大写
            if(convert.charAt(i)>='a' && convert.charAt(i)<='z'){
                temp=convert.substring(i,i+1).toUpperCase();
                demo += temp;
            }
        }
        return demo;
    }

    // 将字符串转移为ASCII码
    public static String getCnASCII(String cnStr) {
        StringBuffer strBuf = new StringBuffer();
        byte[] bGBK = cnStr.getBytes();
        for (int i = 0; i < bGBK.length; i++) {
            // System.out.println(Integer.toHexString(bGBK[i]&0xff));
            strBuf.append(Integer.toHexString(bGBK[i] & 0xff));
        }
        return strBuf.toString();
    }

    public static void main(String[] args) {

        String cnStr = "中华人民共和国";
        System.out.println(getPingYin(cnStr));
        System.out.println(getPinYinHeadChar(cnStr));
    }

}

分享到:
评论
1 楼 love.javaee 2014-11-11  
你的jar包呢。。。

相关推荐

    java汉字转拼音(全拼和首字母)

    本篇文章将深入探讨如何使用Java实现汉字转拼音的功能,包括获取汉字的全拼和首字母。 首先,我们需要理解汉字转拼音的基本原理。汉语拼音是用拉丁字母表示汉字发音的一种方式,全拼是每个汉字对应的完整拼音,而首...

    汉字转换全拼或首字母

    你可以创建一个PL/SQL函数,将汉字转换为全拼后再提取首字母,或者使用已有的开源库,如Java或Python的拼音库,通过存储过程调用实现。 例如,假设我们有一个名为`get_pinyin_initials`的自定义函数,可以这样使用...

    汉字转拼音、首字母、多音字java

    在Java编程语言中,处理汉字转换为拼音、获取汉字首字母以及处理多音字的问题是一项常见的任务,尤其在中文信息处理、搜索引擎优化(SEO)或者中文输入法开发等领域。这里我们将详细探讨这些知识点。 首先,我们要...

    汉字转全拼或首字母Oracle存储过程

    在Oracle数据库环境中,有时我们需要对汉字进行处理,例如将其转换为全拼或首字母,以进行数据检索、索引优化等操作。在这种情况下,可以利用PL/SQL编写存储过程来实现这一功能。"汉字转全拼或首字母Oracle存储过程...

    Java汉字转换为拼音工具类

    Java汉字转换为拼音工具类 汉字转换为拼音包括全拼、首字母缩写;全拼可计算出多音字。

    java获取汉字的首字母

    一个常用的库是`Pinyin4j`,它是一个用于Java的中文拼音处理库,可以方便地获取汉字的全拼和首字母。 以下是一个使用`Pinyin4j`库获取汉字首字母的基本步骤: 1. **添加依赖**: 在项目中引入`Pinyin4j`库,如果是...

    汉字转换拼音 java

    在IT行业中,尤其是在文本处理和自然语言处理领域,汉字转换...Pinyin4j是一个常用的库,它提供了丰富的功能,包括获取拼音全拼、首字母等。结合提供的代码示例和压缩包中的资源,你可以快速上手并应用到自己的项目中。

    java实现读取汉字的首字母

    获取汉字首字母的第一步是将汉字转换为对应的拼音。Java中没有内置的库直接完成此操作,但我们可以利用开源库如`Pinyin4j`或者自定义算法。例如,使用`Pinyin4j`,你可以通过以下步骤获取拼音: ```java import ...

    JAVA中汉字字符转化为英文字符

    - **搜索引擎优化**:将汉字转化为英文首字母形式,有助于提高搜索结果的相关性和排序效率。 - **国际化**:在处理多语言环境时,这种转换可以帮助统一不同语言的处理流程。 - **数据分析**:对于大量包含中文字符的...

    取汉字拼音或首字母的PL/SQL存储过程

    本文将详细解析如何利用PL/SQL编写存储过程来获取汉字的拼音或首字母,主要针对Oracle 9i及以上版本。 首先,我们需要理解汉字转拼音的基本原理。在Oracle中,我们可以借助内置的UTL_I18N和UTL_RAW库来实现这一功能...

    java 提取汉字的首字母、拼音

    在Java编程中,提取汉字的首字母和拼音是一项常见的需求,尤其在中文数据处理和搜索优化方面。这里我们将深入探讨如何使用Java实现这一功能,并基于提供的`pinyin4j-2.5.0.jar`库和`Pinyin.java`源码进行讲解。 `...

    java 取汉字拼音工具包

    1. **全拼与简拼**:工具包通常支持将汉字转换为完整的拼音(全拼)以及首字母缩写(简拼)。全拼提供了每个汉字的完整发音,而简拼则常用于快速输入和查找,如搜索引擎的关键词处理。 2. **声调处理**:汉语拼音有...

    JS汉语转拼音 全拼字母和首拼字母

    在处理中文字符时,有时我们需要将汉字转换为拼音,以便进行各种操作,如搜索、排序或生成便于机器处理的数据。"JS汉语转拼音 全拼字母和首拼字母"这个主题正是关于如何在JavaScript中实现这一功能。 全拼是汉字的...

    JAVA 汉字转换拼音

    首先,pinyin4j是一个开源的Java库,它允许开发者方便地将汉字转换为拼音,包括全拼和首字母缩写。要使用这个库,你需要将其jar包添加到项目的类路径中。在提供的压缩包文件中,`pinyin4j-2.5.0.jar`就是这个库的...

    汉字转换拼音、首字母大写

    首字母大写则是将字符串的每个单词的首字母转换为大写,这是在编程语言中常见的格式化技巧,常用于标题或标题样式。在处理中文时,需要考虑到以下几点: 1. **词的划分**:中文没有明显的空格来区分单词,所以需要...

    取汉字拼音首字母的Demo

    这里以Pinyin4j为例,它是一个用于Java的中文拼音处理库,能够将汉字转换为拼音。 首先,添加Pinyin4j库到项目中。如果你的项目是Maven工程,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;...

    汉字转拼音大小写全拼首字母pinyin4j-jar

    汉字转拼音是指将汉字转换为其对应的汉语拼音,包括全拼(每个汉字对应一个完整的拼音)、首字母(每个汉字对应拼音的首字母,常用于简拼)以及大小写形式。在pinyin4j-jar中,这些功能都得到了很好的支持。 pinyin...

    java获取中文首字母等jar包

    Java获取中文首字母的jar包,如描述中提到的`pinyin4j-2.5.0.jar`,是Java编程领域中处理汉字拼音转换的一个重要工具。在处理中文字符时,尤其是进行数据检索、排序或者关键词提取时,将中文转化为拼音能够带来很大...

Global site tag (gtag.js) - Google Analytics