`
Franciswmf
  • 浏览: 800474 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论
阅读更多
1、中文字符转拼音和首字母,英文数字符号不转
参考博客:
--java根据汉字获取全拼和首字母
https://blog.csdn.net/yufang131/article/details/80830249
<!-- https://mvnrepository.com/artifact/com.belerweb/pinyin4j -->
<dependency>
    <groupId>com.belerweb</groupId>
    <artifactId>pinyin4j</artifactId>
    <version>2.5.1</version>
</dependency>


示例:
public class PinYinUtils {


    /**
     * 获取字符对应的全拼
     * @param src
     * @return
     */
    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 returnStr = "";
        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);
                    returnStr += t2[0];
                } else {
                	returnStr += java.lang.Character.toString(t1[i]);
                }
            }
            return returnStr;
        } catch (BadHanyuPinyinOutputFormatCombination e1) {
            e1.printStackTrace();
        }
        return returnStr;
    }


    /**
     * 获取字符对应的中文首字母
     * @param str
     * @return
     */
    public static String getPinYinHeadChar(String str) {
        String returnStr = "";
        for (int j = 0; j < str.length(); j++) {
            char word = str.charAt(j);
            String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(word);
            if (pinyinArray != null) {
            	returnStr += pinyinArray[0].charAt(0);
            } else {
            	returnStr += word;
            }
        }
        return returnStr;
    }


    /**
     * 将字符串转换为ASCII码
     * @param cnStr
     * @return
     */
    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();
    }

    /**
     * 测试
     * @param args
     */
    public static void main(String[] args) {
        String cnStr = "francis367 *%$#@!bbg";
        System.out.println(getPingYin(cnStr));
        System.out.println(getPinYinHeadChar(cnStr));
        System.out.println(getCnASCII("中国"));
    }

}

分享到:
评论

相关推荐

    汉字字符串拼音排序-QT、C++

    总之,"汉字字符串拼音排序-QT、C++"这个主题涵盖了C++的字符串操作、QT的QString类、Unicode支持以及中文字符串的拼音处理技术。对于开发涉及中文内容的应用来说,掌握这些知识点是非常有价值的。

    C++中文汉字转拼音

    本项目名为"C++中文汉字转拼音",旨在利用C++编程实现一个高效、灵活的汉字转拼音功能。 项目的核心在于使用"拼音-中文"的数据字典。这种设计思路是预先建立一个包含所有汉字及其对应拼音的映射关系,通常以文本...

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

    标题“汉字转拼音_汉字转拼音Excel_”暗示我们将讨论如何使用Excel中的VBA宏来实现这个功能。VBA是一种内置于Microsoft Office套件中的编程语言,允许用户自定义工作簿的行为,包括自动化任务、创建复杂的公式以及...

    JavaScript中文转拼音,JS中文转拼音插件,中文转拼音(JavaScript)

    标题提到的“JavaScript中文转拼音”就是一种这样的技术,它允许开发者将中文字符串转化为拼音形式,以便于程序处理。 描述中提到,这个压缩包内包含了一个已经开发和测试完成的JS中文转拼音插件,文件包括"pyClass...

    中文汉字转拼音 大写(默认) 小写 首字母大写

    在IT领域,中文汉字转拼音是一项常见的处理任务,特别是在自然语言处理、文本分析以及编程中。这个任务的主要目的是将汉字转换成对应的汉语拼音,以便计算机能够更好地理解和处理中文信息。以下将详细介绍汉字转拼音...

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

    在MySQL中实现中文汉字转拼音的功能,主要是为了方便在数据库查询和数据分析时处理中文文本,尤其是在没有全文索引或者需要进行复杂模糊匹配时。以下是一个简单的实现方法,它利用自定义函数来完成这一任务。 首先...

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

    例如,如果一个程序需要对中文字符进行排序,或者在没有输入法的情况下通过英文键盘输入中文,汉字转拼音就显得尤为重要。 "C#汉字转拼音(npinyin)"是一个C#库,它提供了一个方便的方式来将汉字转换为对应的汉语...

    oracle汉字转拼音package包-支持UTF8

    pinyin := oracle汉字转拼音package.get_pinyin('汉字字符串'); DBMS_OUTPUT.PUT_LINE(pinyin); END; / ``` 需要注意的是,由于汉字转拼音可能存在多种读音和多音字的情况,因此这个Package可能还需要提供一些...

    java汉字转拼音,android汉字转拼音,汉字转拼音首字母,汉字转ASCII

    以上就是关于“java汉字转拼音,android汉字转拼音,汉字转拼音首字母,汉字转ASCII”的技术要点。在实际应用中,根据需求选择合适的转换方式,并注意处理可能出现的异常情况,如多音字、非ASCII字符等。在处理大量...

    汉字转拼音,支持几乎所有汉字,已测试过多音字,生僻字.rar

    总之,这个压缩包提供的程序是C++开发的一个实用工具,它能够有效地将中文汉字转换为拼音,解决了多音字和生僻字的问题,适应了广泛的IT应用场景。对于需要处理中文文本的开发者来说,这将是一个有价值的资源。

    关于汉字转拼音的实现方法.rar(简单方便实用)

    汉字转拼音是计算机处理中文文本时常见的需求,尤其在语音合成、搜索引擎索引、自动文本标注等领域有着广泛应用。本资源提供了实现这一功能的必要组件和详细步骤,旨在帮助开发者快速理解并实施汉字转拼音功能。 ...

    表格汉字转拼音_汉字转拼音_

    汉字转拼音是将中文字符转化为其对应的普通话读音的过程。在计算机系统中,汉字通常以Unicode编码存储,而拼音则是一种基于拉丁字母的表示方式,便于计算机处理和搜索。这项技术主要依赖于汉字拼音库,这些库包含了...

    Excel中文转拼音VBA

    1. **输入限制**:该函数只适用于单个汉字的转换,对于多个汉字或非汉字字符将无法正确处理。 2. **编码问题**:由于涉及到ASCII码与Unicode码之间的转换,因此在不同操作系统或Excel版本中可能会遇到兼容性问题。 3...

    delphi 汉字转拼音组件

    例如,可能有一个名为 `GetPinyin` 的函数,接收一个汉字字符串作为参数,返回对应的拼音字符串。 在 Delphi7 这样的较旧版本环境中,组件的兼容性和稳定性至关重要。由于 Delphi7 已经发布多年,许多现代的编程...

    delphi 汉字转拼音首字母含生僻字

    汉字转拼音是指将汉字转换为其对应的汉语拼音,这对于非中文用户理解和处理中文文本非常有用。在Delphi中,实现这个功能通常需要调用特定的库或者API,比如Microsoft的Uniscribe或Google的Pinyin4j(虽然Pinyin4j是...

    新版EXCEL文字转拼音VBA代码.txt

    能够在EXCEL中进行文字转拼音的VBA代码很多,但是网上能够找到的很多代码在新版本的office中转换都不太正确,这一段代码经过试验,在office2010的系统中运行正常。

    易语言汉字转拼音

    汉字转拼音是计算机处理中文时的一项常见任务,它可以应用于各种场景,如语音输入、搜索优化、文本分析等。易语言通过内置的API或自定义模块,可以实现这一功能。下面我们将详细介绍如何在易语言中实现汉字转拼音。 ...

    PB 自动取字符串(汉字)的拼音首字母

    标题“PB自动取字符串(汉字)的拼音首字母”指的是在PowerBuilder(PB)这个编程环境中,实现一个功能,该功能能够将输入的汉字字符串转换为对应的拼音首字母。这在处理汉字数据时非常有用,比如创建关键词索引、搜索...

    java中文转拼音

    1. **转换为完整拼音**:该方法遍历输入的中文字符串,查找每个汉字在拼音表中的对应拼音,并返回完整的拼音串。 2. **转换为拼音首字母**:此方法同样遍历输入的中文字符串,但在找到对应的拼音后只取第一个字母...

    中文汉字转拼音

    在IT领域,中文汉字转拼音是一项重要的技术,特别是在处理中文数据、搜索引擎优化(SEO)、语音合成、自动文本处理等方面有着广泛的应用。PHP作为一款流行的服务器端脚本语言,提供了多种方法来实现这一功能。本文将...

Global site tag (gtag.js) - Google Analytics