今天碰到一个问题,手上有一个二进制文件,里面的数据是由一个一个的float32类型数值组成,现在需要在C#中读取这个文件中的所有数据。
首先找到C#中用于读取二进制文件的有BinaryReade这个类,那么关于这个类的描述及其方法参见MSDN:
https://msdn.microsoft.com/en-us/library/system.io.binaryreader_methods(v=vs.110).aspx
我们可以看到,这个类中有很多不同的ReadXXX函数,用于读取不同类型的数据,然而并没有float32这种类型的读取方法。
后来我想到的一个解决方法是使用ReadBytes

这篇博客讲述了在C#中如何读取包含float32类型数值的二进制文件。由于BinaryReader类没有直接的float32读取方法,作者提出使用ReadBytes(4)结合转换技巧来实现。通过ReadBytes读取4个字节并利用网上找到的转换方法,将这4个字节组合成一个float32值。文章最后提到BinaryReader实际上有ReadSingle()方法可以直接读取float32。
&spm=1001.2101.3001.5002&articleId=52347993&d=1&t=3&u=db5248857d1e4950aa35460f0089acae)
2225

被折叠的 条评论
为什么被折叠?



