axc*_*tor 3 c# floating-point binary matlab file
我有一个浮点数组:
float[] samples32array
Run Code Online (Sandbox Code Playgroud)
我需要将其转换为二进制文件,以便我可以在 matlab 中读取它。
有什么办法可以做到这一点吗?
这很简单。首先,您应该使用FileStream并创建一个文件。然后,您可以使用BinaryWriter,它可以将任何 C# 数据类型写入底层流,例如FileStream.
using (FileStream file = File.Create(path))
{
using (BinaryWriter writer = new BinaryWriter(file))
{
foreach (float value in samples32array)
{
writer.Write(value);
}
}
}
Run Code Online (Sandbox Code Playgroud)
由于 的构造函数BinaryWriter接受基本类型Stream,因此可以使用任何流类型。它适用于文件流以及NetworkStream或MemoryStream等等。它是一个非常通用的类。
并且请避免事先将 转换float[]为 a ,byte[]因为它会分配内存,如果您的数组很大,这很糟糕(不知道您是否属于这种情况)。
| 归档时间: |
|
| 查看次数: |
8011 次 |
| 最近记录: |