汉字转拼音问题

hzy694358 2013-01-05 04:49:20
用的是如下的代码,很多汉字都没法转换:

char CHzToPy::convert(wchar_t n)
{
if (In(0xB0A1,0xB0C4,n)) return 'a';
if (In(0XB0C5,0XB2C0,n)) return 'b';
if (In(0xB2C1,0xB4ED,n)) return 'c';
if (In(0xB4EE,0xB6E9,n)) return 'd';
if (In(0xB6EA,0xB7A1,n)) return 'e';
if (In(0xB7A2,0xB8c0,n)) return 'f';
if (In(0xB8C1,0xB9FD,n)) return 'g';
if (In(0xB9FE,0xBBF6,n)) return 'h';
if (In(0xBBF7,0xBFA5,n)) return 'j';
if (In(0xBFA6,0xC0AB,n)) return 'k';
if (In(0xC0AC,0xC2E7,n)) return 'l';
if (In(0xC2E8,0xC4C2,n)) return 'm';
if (In(0xC4C3,0xC5B5,n)) return 'n';
if (In(0xC5B6,0xC5BD,n)) return 'o';
if (In(0xC5BE,0xC6D9,n)) return 'p';
if (In(0xC6DA,0xC8BA,n)) return 'q';
if (In(0xC8BB,0xC8F5,n)) return 'r';
if (In(0xC8F6,0xCBF0,n)) return 's';
if (In(0xCBFA,0xCDD9,n)) return 't';
if (In(0xCDDA,0xCEF3,n)) return 'w';
if (In(0xCEF4,0xD188,n)) return 'x';
if (In(0xD1B9,0xD4D0,n)) return 'y';
if (In(0xD4D1,0xD7F9,n)) return 'z';
return '\0';
}

GB2312 共收录6763个汉字,其中一级汉字3755个,二级汉字3008个
一级汉字按汉语拼音排序
二级汉字按偏旁部首排序
GBK 共20902字,是在GB2312上的扩展,更不能适用于你的函数了

上面的函数应该只能转换一级汉字的吧
那其他的汉字呢

想问下,有什么好的处理方式吗,能够解析GBK所有的或者说大部分的
...全文
241 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouzhipen 2013-01-25
  • 打赏
  • 举报
回复
金山打字通有字库,文件是ASCII的,可以直接用上,就不知道有没有什么版权问题。
你妹的特盗不 2013-01-25
  • 打赏
  • 举报
回复
LZ啊,实在不好意思啊,前段时间真的太忙了, 晚上把家里电脑翻了个篇,只能打到程序了,代码不知道给弄哪去了。 实在是对不起了。 大概原理我还记得 我们的汉字不是有顺序嘛,求出汉字的顺序,然后这个顺序就成了一个数组. 这个数组就很大的了,所有汉字的首字母全整进去。
hzy694358 2013-01-24
  • 打赏
  • 举报
回复
引用 10 楼 lfs09 的回复:
引用 7 楼 hzy694358 的回复:引用 6 楼 lfs09 的回复:晚上我给你上传一个。 家里电脑有一份程序。 哥们你程序传哪去了 ———————————— 找了一个可以支持GB2312的 但是没有支持GBK的,繁体的怎么办呢 你还在啊,看人没回,以为不在了,就没有上传了,晚上补上
哥们 到底有没有啊,传哪了,都没看到啊 别老放鸽子啊
schlafenhamster 2013-01-18
  • 打赏
  • 举报
回复
繁体的 是 big5 也不是 ascii 拼音 是 “波泼墨佛”
hzy694358 2013-01-18
  • 打赏
  • 举报
回复
引用 6 楼 lfs09 的回复:
晚上我给你上传一个。 家里电脑有一份程序。
哥们你程序传哪去了 ———————————— 找了一个可以支持GB2312的 但是没有支持GBK的,繁体的怎么办呢
你妹的特盗不 2013-01-18
  • 打赏
  • 举报
回复
引用 7 楼 hzy694358 的回复:
引用 6 楼 lfs09 的回复:晚上我给你上传一个。 家里电脑有一份程序。 哥们你程序传哪去了 ———————————— 找了一个可以支持GB2312的 但是没有支持GBK的,繁体的怎么办呢
你还在啊,看人没回,以为不在了,就没有上传了,晚上补上
wyx100 2013-01-18
  • 打赏
  • 举报
回复
"freepy.tab" 里应该 包含 GB2312
你妹的特盗不 2013-01-06
  • 打赏
  • 举报
回复
晚上我给你上传一个。 家里电脑有一份程序。
hzy694358 2013-01-06
  • 打赏
  • 举报
回复
引用 4 楼 tiger9991 的回复:
那个大版的链接真厉害,原然是这么做的。 http://blog.csdn.net/absurd/archive/2006/08/05/1024813.aspx
这个链接下载不到,是要注册吗??
傻X 2013-01-05
  • 打赏
  • 举报
回复
那个大版的链接真厉害,原然是这么做的。 http://blog.csdn.net/absurd/archive/2006/08/05/1024813.aspx
schlafenhamster 2013-01-05
  • 打赏
  • 举报
回复
"freepy.tab" 里应该 包含 GB2312
Eleven 2013-01-05
  • 打赏
  • 举报
回复
http://bbs.csdn.net/topics/90248637 看下这个类似的帖子~
九州剑王 2013-01-05
  • 打赏
  • 举报
回复
我猜是要用字典。。。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧