首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >VB.net中是否有包含ASCII值列表的函数

VB.net中是否有包含ASCII值列表的函数
EN

Stack Overflow用户
提问于 2019-07-06 09:44:46
回答 2查看 194关注 0票数 1

我想写一个函数,它接受一个值参数(设定值x),然后生成ASCII表中x后面的字符的ASCII代码。例如,当我调用函数并将值"B“传递给函数时,函数将返回ASCII值"C”。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-07-06 09:47:24

是,尝试Strings.Asc

代码语言:javascript
复制
Strings.Asc("B") + 1

Asc相反的是Chr

https://docs.microsoft.com/en-us/dotnet/api/microsoft.visualbasic.strings.asc?view=netframework-4.8

票数 0
EN

Stack Overflow用户

发布于 2019-07-07 10:37:45

不,没有列表,至少没有直接列出。

如VB4/5/6/A/Script、C#、F#、Java、JavaScript、…,"Visual Basic“( Microsoft从2005年起称为Visual Basic)对其文本数据类型使用Unicode字符集的UTF-16字符编码。

Unicode以相同的顺序将ASCII码中的所有字符合并为具有相同值的Unicode的C0 Controls and Basic Latin块。

Visual Basic和.NET没有此类字符的列表。您可以注意到,它们都是由UTF-16在一个代码单元(Char)中编码的,范围从&H0到&H7F`。

因此,除了超出ASCII范围的末尾之外,您还可以在UTF-16上执行字符代码数字行运算,以获得相同的结果。代码注释将解释如何使用UTF-16数据类型来解决被描述为使用ASCII的问题。

代码语言:javascript
复制
Function Succ(C As Char) As Char
    Dim utf16 = AscW(C)

    ' Intent is to use this method only for "ASCII" characters, which have the same values in UTF-16 code units.
    If utf16 >= &H7F Then Throw New ArgumentOutOfRangeException(Nameof(C), "Result must be within the C0 Controls and Basic Latin block.") 

    Return ChrW(utf16 + 1)
End Function
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56910644

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档