У меня есть 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));
Мой 2 вопрос:
- После того, как я прочитаю, позиция переместится в currentPosition+readed . Изменится ли memStram.Length?
- Я хочу инициализировать поток (как будто я только что его создал), могу ли я сделать следующее вместо этого, используя Dispose и новый снова, если нет, есть ли более быстрый способ, чем dispose&new: ;
memStram.Position = 0; memStram.SetLength(0);
Спасибо. Джозеф
memStramWriter(byteArrayData);
должно быть? потому что это не скомпилируется... - person Marc Gravell   schedule 07.08.2013memStramWriter.Write(byteArrayData)
? И если да, то почему бы просто неmemStram.Write(byteArrayData, 0, byteArrayData.Length)
? - person Marc Gravell   schedule 07.08.2013