GSM下Unicode和中文字符转码


GSM的调试,通常涉及中文字符的转码UNICODE和ASCII。发送中文时,需要先把中文和SIM号码转换为UNICODE发送出去,然后接收到UNICODE的字符,需要转换为中文内容。这部分代码需要做在上位机里。因为下位机的UNICODE支持不是很好。具体代码如下:

  Public Function Unicode2String(ByVal unicode As String) As String
 ' unicode编码转中文
        Dim resultstr As String = ""
        Dim slen As Integer = unicode.Length

        If slen Mod 4 <> 0 Then
             Return resultstr
        End If

        Dim blen As Integer = unicode.Length / 4
        Dim slist(0 To blen - 1) As String

        For i = 0 To blen - 1
            slist(i) = unicode.Substring(4 * i, 4)
        Next

For i = 0 To slist.Length - 1
   resultstr += ChrW(Integer.Parse(slist(i), System.Globalization.NumberStyles.HexNumber))  ' 必须用 chrW        Next

        Return resultstr
    End Function
Public Function Str2Unicode(ByVal txt As String) As String
'中文转Unicode
        Dim a() As String
        Dim str As String
        Dim i As Integer
        For i = 0 To Len(txt) - 1
            On Error Resume Next
            str = Mid(txt, i + 1, 1)
            'If isChinese(str) = True Then '//是中文
            Str2Unicode = Str2Unicode & StrDup(4 - Len(Hex(AscW(str))), "0") & Hex(AscW(str))
            'Else '//不是中文
            'Str2Unicode = Str2Unicode & str
            'End If
        Next

    End Function

点击数: 419   打印  添加到收藏   发布时间: 2020-04-27




上一篇:Teamview远程ID和PWD自动回传方法
下一篇:隔离变压器的作用





» 相关内容
  光的偏振性检测方法及理解
  netFrame版本对数组最大长度的..
  LC并联谐振用于模拟混频详解
  条形磁铁的磁场方向判断方法
  PCIE开关和桥接的区别
  精密电阻快速匹配方法
  二次曲面参数及flashlight效果
  AHP算法之matlab代码
  LVDS需要注意的几个点
  阴阳与男女之区别
  四象限光电探测器的位置公式
  外触发获取数据实现原理
  自定义USB设备供电不足最终解..
  USB设备连接异常现象
  MCU程序中变量过多引发内存不..