在读取写入的内容之前,我是否需要“倒带”流?

Tho*_*mas 6 .net c# stream

有了这个代码:

using (var stream = new MemoryStream())
{
    thumbnail.Save(stream); // you get the idea
    stream.Position = 0; // <- is this needed?
    WriteStreamToDisk(stream);
}
Run Code Online (Sandbox Code Playgroud)

如果我有一个写入内存流的方法,然后我想将该流写入磁盘,我是否需要将位置设置为 0?

或者,流是否有不同的读/写指针?

Mic*_*Liu 4

流只有一个位置,用于读取和写入。所以,假设...

  1. Thumbnail.Save(O);写入流后不会倒回流,并且
  2. WriteStreamToDisk(O);在开始从流中读取数据之前不会倒回流,

那么是的,您需要自己倒回流。