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。
异常
异常类型 |
错误号 |
条件 |
---|---|---|
CharCode < -32768 或 > 65535(对于 ChrW)。 |
||
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)
要求
**模块:**Strings
**程序集:**Visual Basic 运行库(在 Microsoft.VisualBasic.dll 中)