2013-08-22 113 views
2

我有一個字符串,其中包含0和1.我想知道是否有任何方法在C#中轉換此Uint32。我知道如何做到這一點,沒有任何方法,但我想知道是否有任何方法自動執行?二進制字符串到整數

+2

'Convert.ToUInt32(...)' – leppie

+1

這個調用會打開eg '1000000'到'1000000'而不是'128'。你必須使用重載的方法,它允許你指定數字庫,所以調用將是'Convert.ToInt32(「10000000」,2)'(注意'Convert.ToUInt32'不提供重載來指定數字的基數)。 –

+0

[將二進制字符串轉換爲整數]的可能重複(http://stackoverflow.com/questions/9149728/convert-binary-string-int-integer) – Nolonar

回答

2

可以使用Convert.ToInt32 Method (String, Int32)超載。

若干的在指定基字符串表示形式轉換到 等效的32位帶符號整數。

贊;

uint i = Convert.ToUInt32("010101", 2); //21 

這裏是DEMO

(010101) = 2 * 1 + 2 * 0 + 2 * 1 + 2 * 0 + 2 * 1 + 2 * 0 = 21

4
string s = "0101"; 
uint i = Convert.ToUInt32(s, 2); //<--5 
7

嘗試使用Convert.ToUInt32方法。有過載,它允許你指定基數要從

uint x = Convert.ToUInt32("01010", 2); 

轉換這裏是MSDN頁面,該成員