在进行语料库的制作过程中,一项繁琐的工作便是将已有的汉字手动转换为拼音,格式如下:

Sentence m39C1041 :制约俄国、巩固西方在东欧的立足点,

Sentence spell:Zhi4 yue1 e2 guo2 gong3 gu4 xi1 fang1 zai4 dong1 ou1 de0 li4 zu2 dian3

Sentence m39C1042 :避免东欧发生逆转,

Sentence spell:Bi4 mian3 dong1 ou1 fa1 sheng1 ni4 zhuan3  (来自863语料库)

当我们已知汉字的时候何不自动完成汉字到拼音的转换,我们项目中对语料没有音调的要求,所以“他、塔、榻”所对应的拼音都是“ta”。

这里我们采用了一个工作量巨大的方法,在GB 2312编码中,每一个汉字的编码都是唯一确定的,汉字编码与音节之间存在多对一的关系,通过对汉字编码的总结,得到如下汉字编码—音节对应表,如表1所示。通过对汉字编码—音节对应表的查找,即可实现汉字到音节的转换。例如“帮”字的GB 2312编码为6182,对应的音节即为“bang”。

表1.  汉字编码—音节对应表

汉字编码

音节

6325|6436|7571|7925

a

6263|6440|7040|7208|7451|7733|7945

ai

……

……

5815|7294|7840|8341

zhao

5826|6531|6571|7859|7903|8361

zheng

对于中文操作系统,系统默认编码方式即为GB 2312编码,所以.net中,Encoding.Default 对应于用户在控制面板中区域和语言选项中的默认编码方式。

取得汉字编码的代码实现为:

byte[] ascii = Encoding.Default.GetBytes(strInput);//string为输入的单个汉字

if (ascii.Length == 1)//如果不是汉字而是窄字符

{

return strInput;

}

else

{

int codeNo;

codeNo = (ascii[0] - 0xa0) * 100 + ascii[1] - 0xa0;//最高位*100+最低位就是汉字编码

}

效果演示:

需要源代码请留下你的邮箱!

.net/C# 实现汉字到拼音转换相关推荐

  1. pinyin4J一款非常好用的汉字和拼音转换的插件

    给大家介绍一款非常好用的汉字转拼音,进行用拼音检索相关数据的时候比较方便,就是pinyin4j插件,在eclipse里如果是maven项目,直接导入相关约束,然后导入工具类,随时根据需求调用相关方法即 ...

  2. java使用pinyin4j实现汉字到拼音转换

    1.在pom文件中导入pinyin4j的依赖 <dependency><groupId>com.belerweb</groupId><artifactId&g ...

  3. java jisuan da xie zi mu ge shu_Java 实现汉字转换为拼音的实例

    Java 实现汉字转换为拼音 转换类 public class PINYINChinese { private static int[] pyvalue = new int[] { -20319, - ...

  4. PostgreSQL的汉字转拼音

    为什么80%的码农都做不了架构师?>>>    线上产品升级需要导入一批3W多的用户数据,问题卡在了用户的汉字拼音码上,Excel也能实现大部分汉字的拼音转换,但还有很多生僻字无法转 ...

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

    汉字转拼音貌似一直是C#开发的一个难题,无论什么方案都有一定的bug,之前使用了两种方案. 1.Chinese2Spell.cs 一些不能识别的汉字全部转为Z 2.Microsoft Visual S ...

  6. 如何实现拼音与汉字的互相转换

    如何实现拼音与汉字的互相转换 发表于2个月前(2016-02-16 15:01)   阅读(58) | 评论(0) 6人收藏此文章, 我要收藏 赞0 4月23日,武汉源创会火热报名中,期待您的参与&g ...

  7. php 汉字转拼音类,PHP汉字转换拼音的类_php

    网络上类似的代码大多只能在gb2312编码下使用,下面这个类同时能在utf-8编码下将汉字转换为拼音,具体的代码和用法如下: function Pinyin($_String, $_Code='gb2 ...

  8. c#汉字拼音转换拼音

    汉字转换拼音挺实用的,有拼音转换汉字的交流一下谢谢 public class PinYin{#region//拼音代码表readonly static string[] _spellMusicCode ...

  9. mysql root dengru_Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼)

    <Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼)>要点: 本文介绍了Mysql学习Mysql中文汉字转拼音的实现(每个汉字转换全拼),希望对您有用.如果有疑问,可以联系我 ...

最新文章

  1. java web Junit
  2. 怎么快速把语音转成文字
  3. python编写函数isodd(x)_python函数对象
  4. PC问题-VMware Workstation出现“文件锁定失败”
  5. linux安装部署apache+subversion+jsvnadmin
  6. <LINUX内核完全剖析:基于0.12内核> 笔记一
  7. java中getClass().getResourceAsStream()与getClass().getClassLoader().getResourceAsStream()的区别
  8. 内存动态分配之realloc(),malloc(),calloc()与new运算符
  9. HDU - 4586 数学期望
  10. 电脑屏保海底世界_炸弹测深出来的海底一万米,都藏有何种玄机?
  11. 第七节:框架搭建之页面静态化的剖析
  12. Spring 事务管理总结
  13. 惠普第八代游戏家族产品重磅首发,搭载英特尔第十二代酷睿处理器
  14. 数控镗铣床行业调研报告 - 市场现状分析与发展前景预测
  15. 31muduo_net库源码分析(七)
  16. 小学生都能看懂的生成函数入门教程
  17. kmeans算法中的sse_《Kmeans的K值确定》
  18. landsat8数据下载相关小知识
  19. 创业者不能盲目的跟风,不然结局很凄凉
  20. win怎么在计算机里按日期搜索文件,Win8系统如何按指定修改日期搜索文件

热门文章

  1. servlet的生命周期的介绍
  2. 数据挖掘技术的算法与应用读书报告
  3. Excel如何快速完成图片查找?
  4. 机器视觉、模式识别库
  5. Web服务器性能测试介绍
  6. AFM代码解析及tensorflow复现
  7. vim编辑器替换以及全局替换
  8. AUTOMATE THE BORING STUFF WITH PYTHON读书笔记 - 第19章:MANIPULATING IMAGES
  9. 棒约翰任命Marvin Boakye为首位首席人力官
  10. 淘宝商品详情接口,淘宝详情页接口,宝贝详情页接口,商品属性接口,商品信息查询,商品详细信息接口,h5详情,淘宝APP详情