Foxtable(狐表)用户栏目专家坐堂 → 请问这段VB代码转换成狐表怎么转呢?


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

主题:请问这段VB代码转换成狐表怎么转呢?

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


加好友 发短信
等级:三尾狐 帖子:635 积分:6336 威望:0 精华:0 注册:2011/5/8 13:21:00
请问这段VB代码转换成狐表怎么转呢?  发帖心情 Post By:2019/6/3 4:55:00 [只看该作者]


'//将中文转为unicode编码,如:耳麦,转后为:\u8033\u9EA6
Function urlUnicodeEncode(strCode As String) As String
    
    Dim a() As String
    Dim str As String
    Dim i As Integer
    StrTemp = strCode
    
    For i = 0 To Len(strCode) - 1
    On Error Resume Next
        str = Mid(strCode, i + 1, 1)
        If isChinese(str) = True Then '//是中文
            unicodeEncode = unicodeEncode & "\u" & String(4 - Len(Hex(AscW(str))), "0") & Hex(AscW(str))
        Else '//不是中文
            unicodeEncode = unicodeEncode & str
        End If
        
    Next
 
End Function
 
'//是否为中文
Private Function isChinese(Text As String) As Boolean
 
    Dim l As Long
    Dim i As Long
    l = Len(Text)
    isChinese = False
    
    For i = 1 To l
        If Asc(Mid(Text, i, 1)) < 0 Or Asc(Mid(Text, i, 1)) < 0 Then
        isChinese = True
        Exit Function
        End If
    Next
End Function

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/3 8:16:00 [只看该作者]

Public Function StringToUnicode(ByVal value As String) As String
Dim bytes As Byte() = Encoding.Unicode.GetBytes(value)
Dim stringBuilder As StringBuilder = New StringBuilder()

For i As Integer = 0 To bytes.Length - 1 Step 2
    stringBuilder.AppendFormat("\u{0}{1}", bytes(i + 1).ToString("x").PadLeft(2, "0"c), bytes(i).ToString("x").PadLeft(2, "0"c))
Next

Return stringBuilder.ToString()
End Function


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


加好友 发短信
等级:三尾狐 帖子:635 积分:6336 威望:0 精华:0 注册:2011/5/8 13:21:00
  发帖心情 Post By:2019/6/5 14:42:00 [只看该作者]

学习了

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


加好友 发短信
等级:三尾狐 帖子:635 积分:6336 威望:0 精华:0 注册:2011/5/8 13:21:00
  发帖心情 Post By:2019/6/5 14:49:00 [只看该作者]

以下是引用有点甜在2019/6/3 8:16:00的发言:

Public Function StringToUnicode(ByVal value As String) As String
Dim bytes As Byte() = Encoding.Unicode.GetBytes(value)
Dim stringBuilder As StringBuilder = New StringBuilder()

For i As Integer = 0 To bytes.Length - 1 Step 2
    stringBuilder.AppendFormat("\u{0}{1}", bytes(i + 1).ToString("x").PadLeft(2, "0"c), bytes(i).ToString("x").PadLeft(2, "0"c))
Next

Return stringBuilder.ToString()
End Function

请问这段代码应该放在全局代码中吧,如果调用的话怎么调用呢?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/6/5 15:28:00 [只看该作者]

以下是引用lhpc120在2019/6/5 14:49:00的发言:

请问这段代码应该放在全局代码中吧,如果调用的话怎么调用呢?

 

放在全局代码里,调用参考

 

Dim s As String = StringToUnicode("耳麦")


 回到顶部