以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 这个getpy的结果有点意外 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=138282) |
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 11:43:00 -- 这个getpy的结果有点意外 此主题相关图片如下:微信截图_20190727114204.png 返回的结果为什么是B?
|
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 11:46:00 -- 试验了一下0412的版本结果是正确的 |
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 11:50:00 -- 有没有应急的办法 项目回不去了 |
||||
-- 作者:有点蓝 -- 发布时间:2019/7/27 11:51:00 -- 多音字的原因,这个没有办法解决,可能.net4.0的算法不一样了,试试另外一个:http://www.foxtable.com/webhelp/topics/1270.htm |
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 12:24:00 -- 结果是一样的 这就郁闷了 有很多根据拼音生成的动态控件 现在都不对了 |
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 12:53:00 -- 此主题相关图片如下:微信截图_20190727125122.png |
||||
-- 作者:有点蓝 -- 发布时间:2019/7/27 16:12:00 -- 内置拼音用法有问题,多音字默认是按照拼音排序取值,不是按照常用字频率取值的。临时解决,下载dll放到Foxtable按照目录,然后添加引用,全局代码: Public Function GetPinYin2(text As String, mode As Short) As String Dim fnt As New Pinyin4net.Format.HanyuPinyinOutputFormat fnt.ToneType = Pinyin4net.Format.HanyuPinyinToneType.WITHOUT_TONE fnt.VCharType = Pinyin4net.Format.HanyuPinyinVCharType.WITH_U_UNICODE Dim sb As New StringBuilder For Each c As Char In text If mode = 0 Then sb.Append(" " & Pinyin4net.PinyinHelper.ToHanyuPinyinStringArray(c, fnt)(0)) Else sb.Append(Pinyin4net.PinyinHelper.ToHanyuPinyinStringArray(c, fnt)(0)(0)) End If Next Return sb.ToString().Trim End Function 调用 Dim str As String = "采购入库单" MsgBox(GetPinYin2(str, 0)) MsgBox(GetPinYin2(str, 1))
[此贴子已经被作者于2019/7/27 16:12:36编辑过]
|
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 16:51:00 -- 感谢老师辛苦付出 我马上试试 |
||||
-- 作者:rjh4078 -- 发布时间:2019/7/27 20:04:00 -- 这个方法有个问题 如果字符里有汉字数字字母混合就会报错 比如 项目组A 机台B
|
||||
-- 作者:rjh4078 -- 发布时间:2019/7/28 8:56:00 -- 现在只能先去旧版里生成一个表 在新版里过渡一下 期待修复 |