VB中简单实现繁体简体互转的办法。


    先说明这个方法不是我原创的东西,只是我发现CSDN上不少人在问,我也不止回答N次。有回答说用转换表的,这不失一个办法,但是对于一个简单的程序还带一个庞大的表,毕竟很多人不乐意。其实API可以简单地实现繁简互转。

事实上,这种办法尽适合国标繁体与简体的互相转换。

Private Declare Function LCMapString Lib "kernel32" Alias "LCMapStringA" (ByVal Locale As Long, ByVal dwMapFlags As Long, ByVal lpSrcStr As String, ByVal cchSrc As Long, ByVal lpDestStr As String, ByVal cchDest As Long) As Long
Private Declare Function lstrlen Lib "kernel32" Alias "lstrlenA" (ByVal lpString As String) As Long

'简转繁
Public Function JToF(ByVal Str As String) As String
    Dim STlen As Long
    Dim STf As String
    STlen = lstrlen(Str)
    STf = Space(STlen)
    LCMapString &H804, &H4000000, Str, STlen, STf, STlen
    JToF = STf
End Function

'繁转简
Public Function FToJ(ByVal Str As String) As String
    Dim STlen As Long
    Dim STj As String
    STlen = lstrlen(Str)
    STj = Space(STlen)
    LCMapString &H804, &H2000000, Str, STlen, STj, STlen
    FToJ = STj
End Function

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值