将位图保存到MemoryStream中

我应该分配内存还是只分配内存流的对象:这样可以吗?

MemoryStream memoryStream = new MemoryStream(); bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg); 

如果我需要定义MemoryStream大小,我如何从Bitmap获取它?

.NET是一个托管环境:具体来说,内存分配通常由.NET运行时代表您管理。 您通常不需要自己分配内存。

但是,有时您需要在使用Close()Dispose()完成内存时通知运行时。 using语句可用于包装诸如MemoryStream的资源,以告知运行时可以回收内存。

您不需要预先分配内存。

之后您可以使用memoryStream.Length获取大小。


在使用memoryStream完成所需操作后,请务必将其处理(或将其全部包含在using语句中)。