`
fs216
  • 浏览: 6551 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

将汉字转为拼音

 
阅读更多
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 Pinyin {
	// 将汉字转换为全拼
	public static String getPinYin(String src) {
		char[] t1 = null;
		t1 = src.toCharArray();
		// System.out.println(t1.length);
		String[] t2 = new String[t1.length];
		// System.out.println(t2.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++) {
				// 判断是否为汉字字符
				// System.out.println(t1[i]);
				if (Character.toString(t1[i]).matches("[\\u4E00-\\u9FA5]+")) {
					t2 = PinyinHelper.toHanyuPinyinStringArray(t1[i], t3);// 将汉字的几种全拼都存到t2数组中
					t4 += t2[0];// 取出该汉字全拼的第一种读音并连接到字符串t4后
				} else {
					// 如果不是汉字字符,直接取出字符并连接到字符串t4后
					t4 += Character.toString(t1[i]);
				}
			}
		} catch (BadHanyuPinyinOutputFormatCombination e) {
			e.printStackTrace();
		}
		return t4;
	}

	// 判断第一个字符是否为汉字
	public static boolean isCn(String src) {
		if (src == null || "".equals(src)) {
			return false;
		}
		char[] t1 = null;
		t1 = src.toCharArray();
		try {
			// 判断是否为汉字字符
			if (Character.toString(t1[0]).matches("[\\u4E00-\\u9FA5]+")) {
				return true;
			} else
				return false;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return false;
	}

	// 提取每个汉字的首字母
	public static String getPinYinHeadChar(String str) {
		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;
			}
		}
		return convert;
	}

	// 将字符串转换成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));
			// 将每个字符转换成ASCII码
			strBuf.append(Integer.toHexString(bGBK[i] & 0xff));
		}
		return strBuf.toString();
	}

	// 把汉字转换为拼音
	@SuppressWarnings("unused")
	private static String concatPinyinStringArray(String[] pinyinArray) {
		StringBuffer pinyinStrBuf = new StringBuffer();
		if ((null != pinyinArray) && (pinyinArray.length > 0)) {
			for (int i = 0; i < pinyinArray.length; i++) {
				pinyinStrBuf.append(pinyinArray[i]);
				pinyinStrBuf.append(System.getProperty("line.separator"));
			}
		}
		String outputString = pinyinStrBuf.toString();
		return outputString;
	}

	public static void main(String[] args) {
		System.out.println(isCn(""));
	}
}

 

分享到:
评论

相关推荐

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

    2. **首字母转换**:除了全拼,该库还能将汉字转换为拼音的首字母,这在快速搜索、关键词匹配或者构建拼音索引时很有帮助。例如,"中国"会转换为"zhongguo"。 3. **多音字处理**:中文里存在很多多音字,即同一个字...

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

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

    java将汉字转为拼音

    接下来,我们将通过一个简单的Java代码示例来展示如何使用Pinyin4j将汉字转换为拼音: ```java import net.sourceforge.pinyin4j.PinyinHelper; import ...

    将汉字转换为拼音码的js插件

    总之,“将汉字转换为拼音码的js插件”是前端开发中处理中文数据的一个实用工具,它可以帮助我们更便捷地进行汉字与拼音之间的转换,提升用户体验,特别是在搜索、过滤等功能中。理解并熟练运用这类插件,对于提升...

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

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

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

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

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

    在Oracle数据库中,将汉字转换为拼音是一项实用的功能,尤其对于数据分析、文本处理或构建具有汉字支持的应用程序来说。Oracle提供了内置的函数和工具来实现这个目标,虽然它可能无法处理极少数的生僻字,但对大部分...

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

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

    使用Javascript将汉字转为拼音

    使用Javascript将汉字转为拼音

    Java中将汉字转为拼音的Demo

    - 搜索优化:将用户输入的汉字关键词转换为拼音,与数据库中的拼音索引进行匹配。 - 用户输入提示:根据用户已输入的汉字首字母,快速列出可能的词汇。 - 语音合成:将汉字文本转换为拼音,配合TTS(Text To Speech...

    C语言实现把汉字转换为拼音

    当需要将汉字转换为拼音时,可以通过查询字典来获取相应的拼音。 实现这个功能的关键步骤包括: 1. **数据准备**:创建一个包含所有汉字及其对应拼音的数据结构。这可能涉及到大量的前期工作,如从公开的汉字拼音...

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

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

    将汉字转换为拼音简码或五笔简码

    "将汉字转换为拼音简码或五笔简码"是一个典型的文本处理应用,它涉及到计算机语言学、汉字编码和输入法技术等多个领域。 拼音简码是基于汉字的汉语拼音的一种简化表示方式,常见于各种中文输入法中。例如,汉字...

    将汉字转为拼音首字母,获取取汉字拼音首字母

    总结,本项目通过Delphi实现了将汉字转换为拼音首字母的功能,这涉及到了汉字转拼音的库或API使用、拼音首字母的提取、以及Delphi的源代码组织结构和编程基础。这个功能在许多实际应用中都具有很高的实用价值,如...

    自动将汉字转为拼音的JSP程序

    3. **字符串处理**:对输入的汉字进行遍历,逐个字符地转换为拼音。 #### 代码分析 根据给定的部分JSP代码,我们可以看到以下关键部分: 1. **初始化拼音映射表**: - 使用`Hashtable`对象`ht`来存储Unicode码点...

    批量将汉字转换为拼音、五笔的编码

    批量将汉字转换为拼音和五笔编码是其中的一个重要子任务,尤其对于输入法软件开发者、数据分析人员或者需要处理大量汉字信息的程序员来说。这里我们将深入探讨如何使用Delphi编程语言实现这一功能。 首先,我们来...

    将中文的汉字转化为拼音取大写首字母

    总之,将汉字转化为拼音并提取大写首字母是一项实用且广泛的技术,对于处理和利用中文数据至关重要。通过深入了解其工作原理和应用场景,我们可以更好地发挥这项技术的优势,提升信息处理的效率和质量。

    android 中将汉字转换为拼音

    其主要是android 中将汉字转换为拼音,但对其多音字的处理,其默认的是一般的拼音。总之,对于android中的汉字转拼音,其为系统的一种方法。

    C++中文汉字转拼音

    在IT领域,尤其是在文本处理和自然语言处理方面,将中文汉字转换为拼音是一项常见的任务。C++作为一种强大的编程语言,提供了丰富的库和工具来解决这类问题。本项目名为"C++中文汉字转拼音",旨在利用C++编程实现一...

    汉字转换拼音 java

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

Global site tag (gtag.js) - Google Analytics