c#如何实现将一个数字转化成二进制数字的字符串输出?

xjking0331 2004-12-25 11:00:21
如题
例如: 将8 转化成1000输出到页面
...全文
4208 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hatita 2004-12-25
  • 打赏
  • 举报
回复
不知道C#有没有类库。。。写了个算法实现

int iParam = 8;
StringBuilder sbAnswer = new StringBuilder();
for(int i = 0;;)
{
sbAnswer = sbAnswer.Append((iParam%2));
iParam = iParam/2;
if(iParam == 0)
{
char[] cArray = sbAnswer.ToString().ToCharArray();
Array.Reverse(cArray);
Console.WriteLine(new string(cArray));
break;
}
}
happyjun2000 2004-12-25
  • 打赏
  • 举报
回复
整理了一些转换的方法,希望对你有帮助
///<summary>
///不同进制的数字之间的转换方法。
///int.Parse \ Convert.ToString \ BitConverter.ToString
///</summary>
//十六进制(string)转化为十进制(int)
int i = 0xA1 ; //ASCII码A1转化为对应值 可以:string theValue = (char) 0xA1 ;
//十进制(int)转化为十六进制(string)
int a = 188;
TextBox1.Text=a.ToString("X4") ;
//十六进制(string)转化为十进制(int)
int b = int.Parse("AB", System.Globalization.NumberStyles.HexNumber);

//十进制(int)转化为十六进制(string)
j = 10;
string strBase16 = Convert.ToString(j,16);
//十六进制(string)转化为十进制(int)
string strBase16 = "A";
int j = Convert.ToInt32(strBase16,16);

//二进制(string)转化为十进制(int)
string bin = "1110" ;
int dec= Convert.ToInt16( bin , 2 ) ;
dec.ToString ( ) ;
//十进制(int)转化为二进制(string)
int j = 10;
string strBase2 = Convert.ToString(j,2);
DataAccess.common.setMessage( strBase2 ) ;
//十进制(int)转化为二进制(string)
int dec= 14 ;
sting bin = ConvertToBin ( dec ) ; // dec/2 = "1110"

//BitConverter转化
bytes = System.Text.Encoding.Default.GetBytes( "12Paladin2" ) ;
MessageBox.Show ( BitConverter.ToString( bytes ) ) ; // 31-32-50-61-6C-61-64-69-6E-32

//字节(byte)转化为十六进制(string)
Convert.ToString ( bytes[0+1] , 16 ) ;

//&Hff转化为如255的存放在byte中
byte.Parse ( Convert.ToInt32( '\xff' )).ToString( ) ) ;

//byte中bit操作
int[] hello = new int[1];
hello[0] = 1;
System.Collections.BitArray kao = new BitArray(hello);
bool shit = kao[0];
nenzz 2004-12-25
  • 打赏
  • 举报
回复
用tostring()方法可以呀!
说明:Convert.ToString 方法 (Int16, IFormatProvider)
用法:string valueString = Convert.ToString( value, radix );
//value 整数值,
//radix 为2,8,10,16 分别代表进制。
例:
int i=8;
string Str_Value=Convert.ToString(8,2)
//str_value 我结果为1000
yellowfree 2004-12-25
  • 打赏
  • 举报
回复
sorry,2进制的转换没有发现呀,不过有下面的转换哦
本例使用 Oct 函数返回某个数字的八进制值。
Dim MyOct As String
MyOct = Oct(4) ' Returns 4.
MyOct = Oct(8) ' Returns 10.
MyOct = Oct(459) ' Returns 713.

本例使用 Hex 函数返回数字的十六进制值。
Dim MyHex As String
MyHex = Hex(5) ' Returns 5.
MyHex = Hex(10) ' Returns A.
MyHex = Hex(459) ' Returns 1CB.
tengjian1981 2004-12-25
  • 打赏
  • 举报
回复
up
egxsun 2004-12-25
  • 打赏
  • 举报
回复
没有发现这样的类库

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧