2009-08-25 24 views
0

我有一個字符串被轉換爲一個char數組並存儲在一個字符串集合中,如何返回每個字符串中字符的數字值?我怎樣才能扭轉這個過程,從數值中獲取角色?String.ToCharArray()存儲在StringCollection中轉換爲數字並返回到VB.net

我知道我可以編碼Select Case聲明,但這需要很長時間,因爲我需要涵蓋人們可能想要用英語來使用的每個字符,包括標點符號。

爲了做到這一點,vb.net中是否已經有了一個方法?

感謝您的幫助!

回答

2

Convert類具有能夠字符和整數之間轉換的方法:

Dim c As Char = "A"C 
Dim i As Integer = Convert.ToInt32(c) 
Dim c2 As Char = Convert.ToChar(i) 

要循環中的字符串從所述字符轉換的值轉換成一個整數數組:

Dim codes(theString.Length - 1) As Integer 
For i As Integer = 0 to theString.Length - 1 
    codes(i) = Convert.ToInt32(theString.Chars(i)) 
Next 
+0

第一行代碼中的額外c是什麼? – Cyclone 2009-08-25 17:04:59

+0

@Cyclone:這是一個字符文字。 「A」是包含一個字符的字符串文字,「A」C是字符文字。 – Guffa 2009-08-25 17:06:43

+0

好的,所以我需要有字符字面意思,如果我想這個工作?我可以一次轉換整個字符串嗎? – Cyclone 2009-08-25 17:10:03

1

嘗試是這樣的:

For Each c As Char In yourString 
    Dim i As Int32 = DirectCast(c, Int32) 
Next 

Remeber是System.String工具IEnumerable<Char>所以它是合法的For Each過去。並且在一個字符和一個數字之間進行轉換就像在System.CharSystem.Int32(這裏我已經展示瞭如何獲取字符串中每個字符的數字值)之間進行投射一樣簡單。

+0

所以我是我返回的單個字符的整數? – Cyclone 2009-08-25 17:06:11

+0

是的,你是正確的:) – 2009-08-25 17:08:58

+0

好吧,大聲笑,我會給這個鏡頭。 – Cyclone 2009-08-25 17:11:47

相關問題