2013-01-10 30 views
5

我有一個八個1和0的字符串,其間有空格,類似「1 0 0 1 1 0 1 0」,我想將其轉換爲int。有沒有簡單的方法來做到這一點?我覺得某種linq解析可以做到,但是我一旦找到它們,我甚至不知道如何處理這些角色。在C#中將二進制數字的字符串表示形式轉換爲int#

+0

爲了澄清,字符串'1 0 0 1 1 0 1 0'應該被解析爲兩個,四位值:'1001'和'1010'。然後轉換爲十六進制。正確? –

回答

14

你不需要任何LINQ。
Convert.ToInt*()帶有一個可選fromBase參數,它必須是2,8,10或16

Convert.ToInt32("1 0 0 1 1 0 1 0".Replace(" ", ""), 2) 
+0

那麼,這使得這是一個非常簡單的問題,然後哈哈。非常感謝! – MLavine

1

的替代方法@ SLaks的回答(但僅用於解析十六進制)是

Int32.Parse(hexString, System.Globalization.NumberStyles.HexNumber); 

有儘管如此,沒有二進制的等價物,所以他是一個更好的通用答案。

+0

我錯了。刪除了之前的評論。 – Tilak

相關問題