我应该分配内存还是只需分配内存流的对象:
这样做可以吗?
MemoryStream memoryStream = new MemoryStream();
bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg);
如果我需要定义MemoryStream的大小,我该如何从Bitmap获取它?
我应该分配内存还是只需分配内存流的对象:
这样做可以吗?
MemoryStream memoryStream = new MemoryStream();
bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg);
如果我需要定义MemoryStream的大小,我该如何从Bitmap获取它?
.NET是一个托管环境:具体而言,通常由.NET运行时代表您管理内存分配。您通常不需要自己分配内存。
但有时候,您需要通过使用Close()
或Dispose()
告诉运行时您已经完成了内存的使用。可以使用using
语句来包装资源,如MemoryStream
,以通知运行时内存可以被回收。
无需预先分配内存。
您可以使用 memoryStream.Length
在之后获取大小。
完成对 memoryStream
的操作后,请务必将其释放(或将其全部包装在 using
语句中)。