-1

この方法でC#でバイナリ表現を取得しようとしました

int i = 1;
string binary = Convert.ToString(i, 2);

単一の文字列「1」を返します

数字の文字列が必要です。数字が 8 だとします。ni は 5 桁の 2 進数表現が必要です。

「01000」にする必要があります

桁数 (n) は入力です。

ありがとう

4

3 に答える 3

3
string binary = Convert.ToString(i, 2).PadLeft(5, '0');
于 2012-04-30T10:08:49.293 に答える
1

これでできます。

string str = Convert.ToString(8, 2).PadLeft(5, '0');

PadLeft は、式の左側に 0 を配置するために使用されます。ここでは、5 は数値の全幅です。2 番目のパラメータは、number が 5 文字未満の場合に左に配置する文字です

于 2012-04-30T10:11:03.430 に答える
0

独自のロールを作成すると、次のようなものを使用できます(テストされていませんが、これでうまくいくと思います):

int i = 8; // your number
int noZeros = 5;
StringBuilder sb = new StringBuilder();
while(i != 0 && noZeros > 0){
    if(i & 1 != 0){ sb.Insert(0, "1"); }
    else { sb.Insert(0, "0"); }
    i = i >> 1;
    noZeros --;
}

string binary = sb.ToString();

それはどのintでも機能するはずです。

于 2012-04-30T10:26:23.893 に答える