Chr、ChrW 函数

更新:2007 年 11 月

返回与指定字符代码相关联的字符。

Public Function Chr(ByVal CharCode As Integer) As Char
Public Function ChrW(ByVal CharCode As Integer) As Char

参数

  • CharCode
    必需。Integer 表达式,表示字符的“码位”或字符码。如果 CharCode 不在有效范围之内,将发生 ArgumentException 错误。Chr 的有效范围是 0 到 255,而 ChrW 的有效范围是 -32768 到 65535。

异常

异常类型

错误号

条件

ArgumentException

5

CharCode < -32768 或 > 65535(对于 ChrW)。

ArgumentException

5

CharCode < 0 或 > 255(对于 Chr)。

如果正在升级使用非结构化错误处理方式的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象) 比较错误号。) 然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述 替换这种错误控制。

备注

CharCode 接受的不对称范围补偿 Short 数据类型 (Visual Basic)Integer 数据类型 (Visual Basic) 之间的存储差异。例如,-29183 为 Short,但 +36353 为 Integer。这也有利于与 Visual Basic 6.0 兼容。

Chr 使用 System.Text 命名空间中的 Encoding 类来确定当前线程使用的是单字节字符集 (SBCS) 还是双字节字符集 (DBCS)。然后将 CharCode 作为相应字符集中的码位。对于 SBCS 字符,范围为 0 到 255,对于 DBCS 字符,范围为 -32768 到 65535。

返回值取决于当前线程的代码页,该代码页包含在 System.Globalization 命名空间中 TextInfo 类的 ANSICodePage 属性中。通过指定 System.Globalization.CultureInfo.CurrentCulture.TextInfo.ANSICodePage 可以获得 ANSICodePage

ChrW 以 CharCode 作为 Unicode 码位。其范围与当前线程的区域性和代码页设置无关。-32768 到 -1 范围内的值的处理方式与 +32768 到 +65535 范围内的值相同。

从 0 到 31 的数字与标准的非打印 ASCII 码相同。例如,Chr(10) 返回换行符。

说明:

Visual Basic 早期版本中的 ChrB 函数返回一个单字节。它主要用于在双字节字符集 (DBCS) 应用程序中转换字符串。Visual Basic 和 .NET Framework 中的所有字符串均采用 Unicode 的形式,并且不再支持 ChrB。

示例

下面的示例使用 Chr 函数返回与指定的字符码相关联的字符。

Dim associatedChar As Char
' Returns "A".
associatedChar = Chr(65)
' Returns "a".
associatedChar = Chr(97)
' Returns ">".
associatedChar = Chr(62)
' Returns "%".
associatedChar = Chr(37)

要求

命名空间:Microsoft.VisualBasic

**模块:**Strings

**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)

请参见

参考

字符串操作摘要

Asc、AscW 函数

Str 函数

Conversion 函数 (Visual Basic)

类型转换函数

CultureInfo

ArgumentException