【VB】StrConv函数 vbUnicode用法

【VB】StrConv函数

StrConv(string, conversion, LCID)

vbUnicode

64

根据系统的缺省码页将字符串转成Unicode。

vbFromUnicode

128

将字符串由 Unicode 转成系统的缺省码页。

    Windows系统对字符采用了DBCS编码,它是一套单字节和双字节的混合编码,即西文与ASCII编码一样,是单字节;中文则以两字节编码。

    而StrConv()函数的作用就是作为Unicode与DBCS之间的转换。

bytes_Ansi()=StrConv("a啊b",vbFromUnicode)         '61 B0 A1 62 

    就是将Unicode码(VB缺省String类型)"a啊b"字符串转为DBCS码(转换成Ansi编码的串)

String1=StrConv(Bytes_Ansi(),vbUnicode)         '61 0 4A 55 62 0

    将DBCS(即Ansi格式的数组)转为Unicode字符串(String)。

    转换过程可以用LenB函数进行验证

    由于VB中字符串均用二字节的Unicode表示,在进行文本文件读写时,会自动将String转换为合适的系统DBCS编码,无需专门的转换,但在Open语句Binary读写时,作者需先转换好。如在读写UTF8编码格式的文本文件时,必须使用Binary格式来读写。而一般的Unicode格式和Ansi格式文件,则不需要。

    而通常的Bytes()与String间转换可直接赋值,应为

Dim bytes() as Byte,Str1 as string

str1="a啊b"     或 bytes=str1亦可

 bytes=str1 即'61 0 4A 55 62 0,自动完成了转换

 

转载于:https://www.cnblogs.com/whchensir/p/4129345.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值