web-dev-qa-db-ja.com

ビットマップをMemoryStreamに保存する

メモリまたはメモリストリームのオブジェクトのみを割り当てる必要があります。これでいいですか?

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

MemoryStreamサイズを定義する必要がある場合、Bitmapからどのように取得できますか?

25
Joseph

.NETは管理された環境です。具体的には、通常、メモリ割り当ては.NETランタイムによってユーザーに代わって管理されます。通常、自分でメモリを割り当てる必要はありません。

ただし、場合によっては、Close()またはDispose()を使用して、メモリを終了したときにランタイムに通知する必要があります。 usingステートメントを使用して、MemoryStreamなどのリソースをラップし、メモリを再利用できることをランタイムに伝えることができます。

15
Jeremy McGee

メモリを事前に割り当てる必要はありません。

後でサイズを取得するには、memoryStream.Length


memoryStreamを使用して必要な処理を行ったら、必ず破棄する(または、すべてをusingステートメントでラップする)ようにしてください。

6
George Duckett