[英]How to read float values from binary file using c#?
我正在尝试从binary
文件中读取float
值,
public static void tmpTest ( )
{
string fileName = @"c:\debug\tmp_1.bin";
/* Write */
using ( BinaryWriter bw = new BinaryWriter ( File.Open( fileName, FileMode.Create ) ))
{
bw.Write ( 10.001f );
bw.Write ( 10.002f );
}
/* Read */
using ( BinaryReader br = new BinaryReader ( File.Open ( fileName, FileMode.Open ) ) )
{
int val_1 = br.Read (); // Output : 25
int val_2 = br.Read (); // Output : 4
}
}
我知道我在Read
部分时遗漏了一些东西,当我读取这些值时,我得到val_1
为25
和val_2为4
而不是10(因为返回类型是整数),请指导我在这里做错了什么。
提前谢谢了。
你查过文件了吗? BinaryReader中有一个ReadSingle方法。
float value = binaryReader.ReadSingle();
您正在使用read而不是ReadSingle。 我认为读入int会导致对数据进行一些转换。
请参阅以下有关Read和ReadSingle的文档文章
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.