字节数组和MemoryStream之间的区别

Kei*_*ons 18 comparison performance

我正在将二进制文件读入解析程序.我将需要遍历文件并查找某些标记,以便我可以将文件拆分并将这些部分传递到各自对象的构造函数中.

将文件作为流(MemoryStream或FileStream)保存还是应该转换为byte []数组是否有优势?

基思

den*_*ips 25

一个byte[]MemoryStream两个都需要将整个文件带入内存.A MemoryStream实际上是底层字节数组的包装器.最好的方法是有两个FileStream(一个用于输入,一个用于输出).从输入流中读取,查找用于指示在写入当前输出文件时应分离文件的模式.

你可能要考虑包装的输入和输出文件BinaryReader,并BinaryWriter分别带来价值,以您的方案.


Tim*_*mbo 8

MemoryStream基本上是一个带有流接口的字节数组,例如顺序读/写和当前位置的概念.