详细信息

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 格式的这种数组时,使用赋值语句。

StrConv 函数示例1:

本示例使用StrConv 函数来将Unicode 字符串转换成 ANSI 字符串。

Dim i As Long

Dim x() As Byte

x = StrConv("ABCDEFG", vbFromUnicode) ' 转换字符串。

For i = 0 To UBound(x)

Debug.Print x(i)

Next

实例2:

Buf="A" 'A的Unicode码值为41

OutByte = StrConv(Buf, vbFromUnicode)

则OutByte=41

相关基础知识:

命名参数

一参数,在对象库中预先定义了其名称。对每个参数,不必拘泥于语法所规定的特定顺序来提供值,而是只需按任何顺序用命名参数分配值。例如,假设一方法接受了三个参数:

DoSomeThing namedarg1, namedarg2, namedarg3

在对命名参数赋值时,可使用以下语句:

DoSomeThing namedarg3 := 4, namedarg2 := 5, namedarg1 := 20

注意,命名的参数不必按语法中安排的正规顺序出现。

字符串表达式

任何其值为一连串字符的表达式。字符串表达式的元素可包含返回字符串的函数、字符串文字、字符串常数、字符串变量、字符串 Variant 或返回字符串 Variant (VarType 8) 的函数。

Integer 数据类型

一种数据类型,将整型变量作为 2 字节整数存储起来,范围是 -32,768 到 32,767 之间的数字。Integer 数据类型也可表示列举值。在 Visual Basic 可用百分比符号 (%) 的类型声明字符来表示一个 Integer。

参数

传递给一个过程的常数、变量或表达式。

Unicode

国际标准化组织 (ISO) 字符标准。Unicode 使用 16 位 (2 字节) 编码方案,允许 65,536 个不同的字符空间。Unicode 包含标点符号、数学符号、修饰符号等的表示。

常数

执行程序时保持常数值的命名项目。常数可以是字符串、数值、另一常数、任何( 除乘幂与 Is 之外的) 算术运算符或逻辑运算符的组合。每个主应用程序皆可定义自己的一组常数。用户也可以 Const 语句定义附加常数。可在代码中的任何地方使用常数代替实际的值。

区域

关于国家/地区及其语言的信息集合。代码区域设置会影响关键字等术语的语言,也会定义区域专用设置,像小数点、日期格式、字符排序顺序等。

系统的区域设置会影响到判别区域的功能,例如,在显示数字或将字符串转换成日期时,可使用操作系统“控制面板”的实用程序来设置系统所在区域。

虽然代码区域和系统区域通常设置为相同的设置值,但在一些情况仍有不同之处。例如,在标准版 Visual Basic 和专业版 Visual Basic 中,并没有把代码从 English-U.S. 翻译过来。可以把系统区域设置成用户的语言和国家/地区,但总是将代码区域设置成 English-U.S.,而且不能改变。在这种情况下,将使用 English-U.S. 分隔符、格式占位符和排序次序。

运行时错误

在代码正在运行的时发生的错误。当一语句要进行非法操作时就会发生运行时错误。

Null

一个值,指示变量不含有效数据。 Null 是将 Null 显式赋值给一变量的结果,或者是包含 Null 的表达式之间的任何运算。

DBCS

使用 1 或 2 字节来表示一字符的字符集,超过个 256 字符也可表示。