首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

怎么把byte转换为中文或数字

2012-03-19 
如何把byte转换为中文或数字在SOCKET通讯中返回一串BYTE类型,其中包括卡号(数字),姓名(中文)等信息,现想分

如何把byte转换为中文或数字
在SOCKET通讯中返回一串BYTE类型,其中包括卡号(数字),姓名(中文)等信息,现想分解BYTE,得到相对应的卡号,姓名等信息

[解决办法]
Str = StrConv(hex(), vbUnicode)
[解决办法]
给你写了个简单的示例,大致思路就是要把每一个部分单独的用Byte数组读出来,分别按各自的规律解释。

VB code
Option ExplicitPublic Sub Test()    Dim bytInput(20) As Byte, bytName(12) As Byte    Dim strNumber As String, strName As String    Dim i As Long    '准备数据'    '初始化Input'    For i = 0 To 19        bytInput(i) = 0    Next i        '假设卡号是1234,每个数字占一个字节'    '你也可能有不同的规律,那就相应地更换代码'    For i = 0 To 3        bytInput(i) = i + 1    Next i        '假设名字是西西,并且是Unicode编码'    '你也可能有不同的规律,那就相应地更换代码'    bytInput(4) = &H7F    bytInput(5) = &H89    bytInput(6) = &H7F    bytInput(7) = &H89    '分割还原数据'    '先获得卡号'    strNumber = CStr(bytInput(0)) & CStr(bytInput(1)) & CStr(bytInput(2)) & CStr(bytInput(3))        '再获得名字'    For i = 0 To 11        bytName(i) = bytInput(i + 4)    Next i    strName = bytName '这里要加些代码处理多出的字节'    End Sub
[解决办法]
不二选择:StrConv

StrConv 函数


返回按指定类型转换的 Variant (String)。

语法

StrConv(string, conversion, LCID)

StrConv 函数的语法有下面的命名参数:

部分 说明 
string 必要参数。要转换的字符串表达式。 
conversion 必要参数。Integer。其值的和决定转换的类型。 
LCID 可选的。如果与系统LocaleID不同,则为LocaleID(系统LocaleID为缺省值。) 


设置值

conversion 参数的设置值为:

常数 值 说明 
vbUpperCase 1 将字符串文字转成大写。 
vbLowerCase 2 将字符串文字转成小写。 
vbProperCase 3 将字符串中每个字的开头字母转成大写。 
vbWide* 4* 将字符串中单字节字符转成双字节字符。 
vbNarrow* 8* 将字符串中双字节字符转成单字节字符。 
vbKatakana** 16** 将字符串中平假名字符转成片假名字符。 

vbHiragana** 32** 将字符串中片假名字符转成平假名字符。 
vbUnicode 64 根据系统的缺省码页将字符串转成 Unicode。 
vbFromUnicode 128 将字符串由 Unicode 转成系统的缺省码页。 



*应用到远东国别。

**仅应用到日本。

注意 这些常数是由 VBA 指定的。可以在程序中使用它们来替换真正的值。其中大部分是可以组合的,例如 vbUpperCase + vbWide,互斥的常数不能组合,例如 vbUnicode + vbFromUnicode。当在不适用的国别使用常数 vbWide、vbNarrow、vbKatakana,和 vbHiragana 时,就会导致运行时错误。

下面是一些一般情况下的有效分界符:Null (Chr$(0)),水平制表符 (Chr$(9)),换行 (Chr$(10)),垂直制表符 (Chr$(11)),换页 (Chr$(12)) ,回车 (Chr$(13)),空白 (SBCS) (Chr$(32))。在 DBCS中,空白的实际值会随国家/地区而不同。

说明

在把 ANSI 格式的 Byte 数组转换为字符串时,您应该使用 StrConv 函数。当您转换 Unicode 格式的这种数组时,使用赋值语句。

热点排行