2012-10-19 65 views
-2

可能重复:
Decimal to binary conversion in C#我怎样才能得到一个值的二进制表示

我有数字,如3,432,1,等等。我需要将这些数字转换为零集合,然后将这些位存储在一个整数数组中,但不知道如何获得任何整数的位表示。

+9

请把 “C#整数二进制” 谷歌。第一个链接将是(惊喜)http://stackoverflow.com/questions/2954962/decimal-to-binary-conversion-in-c PS:总是咨询谷歌,然后试图与人类做到这一点 - 我认为你的问题是独一无二的。 – zerkms

+0

...这不是什么他在做什么 – Rawling

+1

'“但不知道我怎么能得到任何整数的位表示。”'这是在复制答案。 – phant0m

回答

8

使用Convert.ToString Method (Int32, Int32)

一个32位带符号整数的值在指定的基 表示形式转换为它的等效串。

int val = 10; 
string binaryNumberString = Convert.ToString(val, 2); 

把它们放在一个int数组尝试:

int[] arr = new int[binaryNumberString.Length]; 
int i=0; 
foreach (var ch in binaryNumberString) 
{ 
    arr[i++] = Convert.ToInt32(ch.ToString()); 
} 
+0

嗯,这是不对的,但现在是! +1 – Rawling

3

可以使用Convert.ToString()方法

int n = 50; 
int b = 2; 

string binaryForm = Convert.ToString(n, b); 
+0

感谢您的回复,但是在这种情况下底座意味着什么? –

+2

@Vinod base是一个关键字在c# –

+0

雅我知道,但它将如何影响返回的位值我的意思是说,我将基地定义为2如果我将基地定义为8 –