如何在c#中将带点的十进制数转换为二进制数?
例如,我看到:如何在c#中将带点的十进制数转换为二进制数?,c#,C#,例如,我看到: In this web i see that all answer about thins like converting decimal number to binary its refers number without point in the number(int)... i want to know how to convert the decimal number with point like "332.434" to binary in c# 该示例引用
In this web i see that all answer about thins like converting decimal number to binary
its refers number without point in the number(int)...
i want to know how to convert the decimal number with point like "332.434" to binary in c#
该示例引用了从int到point的转换
谢谢,只需使用位转换器获取字节,然后在其上循环,将其转换为字符串,并将当前的位字符串附加到上一个位字符串上
using System;
namespace _01.Decimal_to_Binary
{
class DecimalToBinary
{
static void Main(string[] args)
{
Console.Write("Decimal: ");
int decimalNumber = int.Parse(Console.ReadLine());
int remainder;
string result = string.Empty;
while (decimalNumber > 0)
{
remainder = decimalNumber % 2;
decimalNumber /= 2;
result = remainder.ToString() + result;
}
Console.WriteLine("Binary: {0}",result);
}
}
}
byte[]byteArray=BitConverter.GetBytes(MyDouble);
string ByteString=System.string.Empty;
for(int i=0;i
您可能需要进行一些修补以获得正确顺序的位,但我假设ByTestRing将在左侧具有高阶位。这是该ToString方法的MSDN页面您不能简单地将非整数转换为二进制格式。例如,对于3.145926,计算机保留一个符号(+/-),一个数字本身,但始终有一个前导零(0.3141596)和一个尾数(E-1)。所以你需要保留这三个部分。在维基百科上阅读更多内容这是一项简单的任务。二进制表示浮点数的复杂性对将其转换为位字符串的难度没有影响。该过程与任何其他基元类型的过程没有什么不同。获取字节,然后将其转换为位字符串。
byte[] byteArray = BitConverter.GetBytes(MyDouble);
string ByteString = System.String.Empty;
for (int i = 0; i < byteArray.Length; i++)
ByteString = Convert.ToString(byteArray[i], 2).PadLeft(8, '0');