我需要将字符串数据从字节转换为浮点数
I need to convert a string data from byte to float
我有一个文本框,我需要转换我输入的值。
最后我想我需要将 Double 转换为数据。
但是有问题
示例代码:
textbox1.Text = "24.5";
double data = int.Parse(textbox1.Text);
byte[] b = BitConverter.GetBytes((data)f);
int i = BitConverter.ToInt32(b, 0);
代码像这样工作
byte[] b = BitConverter.GetBytes(22.3f);
int i = BitConverter.ToInt32(b, 0);
如何插入字符串数据?
int.Parse()
是错误的,可能会抛出异常。如果您有字符串值 "24.5"
,您希望 整数 与“.5”部分有什么关系?
试试这个:
textbox1.Text = "24.5";
double data = double.Parse(textbox1.Text);
如果您使用 double.TryParse()
重载之一,那就更好了。
我觉得你不会写
byte[] b = BitConverter.GetBytes((data)f);
(数据)f -> 无效。我认为您想像 24.5f 一样使用它。尝试将其转换为浮动。例如:
byte[] b = BitConverter.GetBytes((float) data);
此外,为什么要将字符串作为 int 解析为 double?直接将字符串解析为double.
看看@Joel Coehoorn 的评论。
有关 Double.TryParse() 的更多信息,请参阅:Microsofts handbook about Double.TryParse
我有一个文本框,我需要转换我输入的值。
最后我想我需要将 Double 转换为数据。
但是有问题 示例代码:
textbox1.Text = "24.5";
double data = int.Parse(textbox1.Text);
byte[] b = BitConverter.GetBytes((data)f);
int i = BitConverter.ToInt32(b, 0);
代码像这样工作
byte[] b = BitConverter.GetBytes(22.3f);
int i = BitConverter.ToInt32(b, 0);
如何插入字符串数据?
int.Parse()
是错误的,可能会抛出异常。如果您有字符串值 "24.5"
,您希望 整数 与“.5”部分有什么关系?
试试这个:
textbox1.Text = "24.5";
double data = double.Parse(textbox1.Text);
如果您使用 double.TryParse()
重载之一,那就更好了。
我觉得你不会写
byte[] b = BitConverter.GetBytes((data)f);
(数据)f -> 无效。我认为您想像 24.5f 一样使用它。尝试将其转换为浮动。例如:
byte[] b = BitConverter.GetBytes((float) data);
此外,为什么要将字符串作为 int 解析为 double?直接将字符串解析为double.
看看@Joel Coehoorn 的评论。 有关 Double.TryParse() 的更多信息,请参阅:Microsofts handbook about Double.TryParse