【发布时间】:2013-08-07 08:15:07
【问题描述】:
我有一个 MemoryStream /BinaryWriter ,我使用它如下:
memStram = new MemoryStream();
memStramWriter = new BinaryWriter(memStram);
memStramWriter(byteArrayData);
现在要阅读,我会执行以下操作:
byte[] data = new byte[this.BulkSize];
int readed = this.memStram.Read(data, 0, Math.Min(this.BulkSize,(int)memStram.Length));
我的第二个问题是:
- 读取后,位置移动到 currentPosition+readed ,是否 memSram.Length 会改变吗?
- 我想初始化流(就像我刚刚创建它一样),我是否可以再次使用 Dispose 和 new 执行以下操作,如果没有,是否有比 dispose&new 更快的方法:;
memStram.Position = 0; memStram.SetLength(0);
谢谢。 约瑟夫
【问题讨论】:
-
memStramWriter(byteArrayData);是什么意思?因为那不会编译... -
所以...你的意思是
memStramWriter.Write(byteArrayData)吗?如果是这样,为什么不只是memStram.Write(byteArrayData, 0, byteArrayData.Length)?
标签: c# .net stream memorystream binarywriter