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 Dim STf As String '繁体字符串 Dim STj As String ' 简体字符串 Dim STlen As Long ' 待转换字串长度 Sub Test1() 'Gb码简体转繁体
STj = "中华人民共和国" STlen = lstrlen(STj) STf = Space(STlen) LCMapString &H804, &H4000000, STj, STlen, STf, STlen Debug.Print STf End Sub Sub Test2() 'Gb码繁体转简体
STf = "中華人民共和國" STlen = lstrlen(STf) STj = Space(STlen) LCMapString &H804, &H2000000, STf, STlen, STj, STlen Debug.Print STj End Sub Sub Test3() '国标繁体转港台繁体
Te = "君不見黃河之水天上來,奔流到海不復回。"
ST = StrConv(Te, vbFromUnicode) ST = StrConv(ST, vbUnicode, &H804) ST = StrConv(ST, vbFromUnicode, &H404) Te = StrConv(ST, vbUnicode) Debug.Print Te End Sub Sub Test4() '港台繁体转国标繁体
Te = "?ぃǎ独猠ぇ?ぱ?ㄓ?゜瑈??ぃ確??" ST = StrConv(Te, vbFromUnicode) ST = StrConv(ST, vbUnicode, &H404) ST = StrConv(ST, vbFromUnicode, &H804) Te = StrConv(ST, vbUnicode) Debug.Print Te End Sub |
|