Foxtable(狐表)用户栏目专家坐堂 → 这个getpy的结果有点意外


  共有3410人关注过本帖树形打印复制链接

主题:这个getpy的结果有点意外

帅哥哟,离线,有人找我吗?
rjh4078
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
这个getpy的结果有点意外  发帖心情 Post By:2019/7/27 11:43:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190727114204.png
图片点击可在新窗口打开查看
返回的结果为什么是B?

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 11:46:00 [只看该作者]

试验了一下0412的版本结果是正确的 

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 11:50:00 [只看该作者]

有没有应急的办法 项目回不去了

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110818 积分:564034 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/7/27 11:51:00 [只看该作者]

多音字的原因,这个没有办法解决,可能.net4.0的算法不一样了,试试另外一个:http://www.foxtable.com/webhelp/topics/1270.htm

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 12:24:00 [只看该作者]

结果是一样的  这就郁闷了 有很多根据拼音生成的动态控件  现在都不对了



 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 12:53:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190727125122.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:微信截图_20190727125235.png
图片点击可在新窗口打开查看

单独一个汉字也是这个结果  而且这个字多音差距也太远了吧

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110818 积分:564034 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By: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))
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:pinyin4net.zip


[此贴子已经被作者于2019/7/27 16:12:36编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 16:51:00 [只看该作者]

感谢老师辛苦付出 我马上试试

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/27 20:04:00 [只看该作者]

这个方法有个问题 如果字符里有汉字数字字母混合就会报错
比如 项目组A
机台B

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3370 积分:24858 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2019/7/28 8:56:00 [只看该作者]

现在只能先去旧版里生成一个表 在新版里过渡一下 期待修复

 回到顶部
总数 13 1 2 下一页