C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母
1.Chinese2Spell.cs 一些不能识别的汉字全部转为Z
2.Microsoft Visual Studio International Feature Pack 1.0 连"广"、“区”都不能转,很让人失望。
这些都是2010年以前的方案,至少还有大侠在为汉字转拼音不断努力着,目前发现最完美的就是NPINYIN,在googlecode可以看到它的开源项目,http://code.google.com/p/npinyin/
不能识别的字很少,而且还在不断维护更新,日趋完美,推荐大家使用。
下载地址
dll:http://files.cnblogs.com/files/guohu/NPinyin-0.2.4588.20158-bin.zip
源码:http://files.cnblogs.com/files/guohu/NPinyin-0.2.x-source_code.zip
v0.2.x的变化
- 1、增加对不同编码格式文本的支持,同时增加编码转换方法Pinyin.ConvertEncoding
- 2、重构单字符拼音的获取,未找到拼音时返回字符本身.
汪思言 2012年7月23日晚
将中文转换成拼音全文和首字母的.net 组件。示例:
using System;
using System.Collections.Generic;
using System.Text;
using NPinyin; namespace NPinyinTest
{
class Program
{
static void Main(string[] args)
{
string[] maxims = new string[]{
"事常与人违,事总在人为",
"骏马是跑出来的,强兵是打出来的",
"驾驭命运的舵是奋斗。不抱有一丝幻想,不放弃一点机会,不停止一日努力。 ",
"如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭",
"懦弱的人只会裹足不前,莽撞的人只能引为烧身,只有真正勇敢的人才能所向披靡"
}; string[] medicines = new string[] {
"聚维酮碘溶液",
"开塞露",
"炉甘石洗剂",
"苯扎氯铵贴",
"鱼石脂软膏",
"莫匹罗星软膏",
"红霉素软膏",
"氢化可的松软膏",
"曲安奈德软膏",
"丁苯羟酸乳膏",
"双氯芬酸二乙胺乳膏",
"冻疮膏",
"克霉唑软膏",
"特比奈芬软膏",
"酞丁安软膏",
"咪康唑软膏、栓剂",
"甲硝唑栓",
"复方莪术油栓"
}; Console.WriteLine("UTF8句子拼音:");
foreach (string s in maxims)
{
Console.WriteLine("汉字:{0}\n拼音:{1}\n", s, Pinyin.GetPinyin(s));
} Encoding gb2312 = Encoding.GetEncoding("GB2312");
Console.WriteLine("GB2312拼音简码:");
foreach (string m in medicines)
{
string s = Pinyin.ConvertEncoding(m, Encoding.UTF8, gb2312);
Console.WriteLine("药品:{0}\n简码:{1}\n", s, Pinyin.GetInitials(s, gb2312));
} Console.ReadKey();
}
}
}
运行结果
UTF8句子拼音: 汉字:事常与人违,事总在人为 拼音:shi chang yu ren wei , shi zong zai ren wei
汉字:骏马是跑出来的,强兵是打出来的 拼音:jun ma shi pao chu lai de , qiang bing shi da chu lai de
汉字:驾驭命运的舵是奋斗。不抱有一丝幻想,不放弃一点机会,不停止一日努力。 拼音:jia yu ming yun de duo shi fen dou 。 bu bao you yi si huan xiang , bu fa ng qi yi dian ji hui , bu ting zhi yi ri nu li 。
汉字:如果惧怕前面跌宕的山岩,生命就永远只能是死水一潭 拼音:ru guo ju pa qian mian die dang de shan yan , sheng ming jiu yong yuan zh i neng shi si shui yi tan
汉字:懦弱的人只会裹足不前,莽撞的人只能引为烧身,只有真正勇敢的人才能所向披靡 拼音:nuo ruo de ren zhi hui guo zu bu qian , mang zhuang de ren zhi neng yin w ei shao shen , zhi you zhen zheng yong gan de ren cai neng suo xiang pi mi
GB2312拼音简码: 药品:聚维酮碘溶液 简码:JWTDRY
药品:开塞露 简码:KSL
药品:炉甘石洗剂 简码:LGSXJ
药品:苯扎氯铵贴 简码:BZLAT
药品:鱼石脂软膏 简码:YSZRG
药品:莫匹罗星软膏 简码:MPLXRG
药品:红霉素软膏 简码:HMSRG
药品:氢化可的松软膏 简码:QHKDSRG
药品:曲安奈德软膏 简码:QANDRG
药品:丁苯羟酸乳膏 简码:DBQSRG
药品:双氯芬酸二乙胺乳膏 简码:SLFSEYARG
药品:冻疮膏 简码:DCG
药品:克霉唑软膏 简码:KMZRG
药品:特比奈芬软膏 简码:TBNFRG
药品:酞丁安软膏 简码:TDARG
药品:咪康唑软膏、栓剂 简码:MKZRG、SJ
药品:甲硝唑栓 简码:JXZS
药品:复方莪术油栓 简码:FFESYS
C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母的更多相关文章
- excel中文转成拼音字母(包括首字母大写)
参考文献: 1.首字母大写:http://www.excelpx.com/thread-168029-1-1.html(里面下载一个excel,里面有宏) 中文转拼音: 2.http://blog.s ...
- C# 汉字转拼音 将中文转换成拼音
//建立一个公共类,用于转换汉字 public class ChnToPh { //定义拼音区编码数组 private static int[] getValue = new int[] { -,-, ...
- Asp.net Core中文转换成拼音
一.概述 之前使用.net framework,可以使用Microsoft Visual Studio International Feature Pack 1.0 进行转换,现在使用asp.net ...
- C#中文转换成拼音英文
#region 0.1 中文转到英文 + static string GetPinYing(string characters) /// <summary> /// 中文转到英文 /// ...
- MySQL中文转换成拼音的函数
CREATE DEFINER=`root`@`localhost` FUNCTION `fristPinyin`(`P_NAME` VARCHAR(255) CHARSET utf8) RETURNS ...
- SQL 汉字转换成拼音首字母 首字母查
-- ============================================= -- 功能:汉字转换成拼音首字母 首字母查 -- ========================== ...
- java中汉字自动转换成拼音
java中汉字自动转换成拼音 1.需要下载jar包 pinyin4j.2.5.0.jar ,加入到WEB-INF下的lib里边,右键add to bulid path. 2.[代码]PinYinUti ...
- python把汉字转换成拼音实现程序
python把汉字转换成拼音实现程序 文章一个简洁干的汉字转拼音 程序,复制下载就可以直接使用,有需要的同学可以参考一下下. #coding:utf-8 #基于python2.6 table = 'a ...
- C++ 将汉字转换成拼音全拼
#include <string> using std::string; //======================================================= ...
随机推荐
- Lind.DDD.UoW~方法回调完成原子化操作
回到目录 本文来自于实践中的不足 在最近开始过程中,遇到了一个问题,之前设计的工作单元UoW只支持Insert,Update,Delete三种操作,即开发人员可以将以上三种操作同时扔进工作单元,由工作 ...
- html meta标签使用总结
meta标签作用 META标签是HTML标记HEAD区的一个关键标签,提供文档字符集.使用语言.作者等基本信息,以及对关键词和网页等级的设定等,最大的作用是能够做搜索引擎优化(SEO). PS:便于搜 ...
- 用Kotlin开发Android应用(IV):定制视图和Android扩展
原文标题:Kotlin for Android (IV): Custom Views and Android Extensions 原文链接:http://antonioleiva.com/kotli ...
- Dagger2 (一) 入坑篇
为什么是Dagger2 为了更好的了解Dagger2,请先阅读RoboGuice篇了解依赖注入. 官方文档称,依赖注入这种技术已经在存在多年了,为什么Dagger2要造轮子? Dagger2是第一个全 ...
- iOS 动画绘制线条颜色渐变的折线图
效果图 .................... 概述 现状 折线图的应用比较广泛,为了增强用户体验,很多应用中都嵌入了折线图.折线图可以更加直观的表示数据的变化.网络上有很多绘制折线图的demo,有 ...
- 下一代Asp.net开发规范OWIN(2)—— Katana介绍以及使用
接上篇OWIN产生的背景以及简单介绍,在了解了OWIN规范的来龙去脉后,接下来看一下Katana这个OWIN规范的实现,并看看如何使用在我们的Web开发中. 阅读目录: 一. Katana项目的结构和 ...
- ORACLE基本数据类型总结
ORACLE基本数据类型(亦叫内置数据类型 built-in datatypes)可以按类型分为:字符串类型.数字类型.日期类型.LOB类型.LONG RAW& RAW类型.ROWID &am ...
- ORA-14450: attempt to access a transactional temp table already in use
在ORACLE数据中修改会话级临时表时,有可能会遇到ORA-14550错误,那么为什么会话级全局临时表会报ORA-14450错误呢,如下所示,我们先从一个小小案例入手: 案例1: SQL> CR ...
- [AlwaysOn Availability Groups]AG扩展事件
AG扩展事件 SQL Server 2012定义了一些关于AlwaysOn的扩展事件.你可以监控这些扩展事件来帮助诊断AG的根本问题.你也可以使用以下语句查看扩展事件: SELECT * FROM s ...
- SQL周、日、月、年数据统计
本文只是记录在项目中用到的统计的SQL语句,记一笔以防忘了 /// <summary> /// 获取统计数据 /// </summary> /// <param name ...