2013-08-06 40 views
0

我想将字符串转换为整数数组。 但我想整数数组字符串ASCII值整数数组

例如 “A” 在ASCII值 - > 65

例如 “2” - > 50

Dim myString as string = "ABC"

'....

Dim integerArray(3) as integer

PLZ没有任何工作周围像循环;)

+2

总会有一些循环,即使你没有看到它,因为它是在一些方法。那么,一个包含循环的方法对你来说将是一个合适的解决方案?另外:循环不是解决方法,它们很简单。不过,用非直接的东西代替循环可以被认为是一种解决方法。 –

+0

也在.net字符串表示为可能包含没有ascii表示的值的unicode,解决方案应如何处理它们? – user1937198

+0

true,使用此函数循环...你可以得到ASCII码,或者他的值不一样... ASCII码“2”的​​值是50 – Gambzor

回答

1

如果你想ASCII编码,你可以这样做:

Dim test As String = "Hello" 
Dim bytes As Byte() = Encoding.ASCII.GetBytes(test) 

数组'字节'将包含字符串的ASCII表示。正如@ user1937198指出的,虽然,是ASCII编码你真正想要的?

为了让字节数组整数数组,你可以这样做:

Dim ints As Integer() = bytes.Select(Function(b) Convert.ToInt32(b)).ToArray() 
0

没有任何“作弊”像循环:

Dim asciiValues = "The string to convert".ToCharArray().Select(Function(c) Asc(c)).ToArray() 

(注:循环不作弊要么...;))