How do I use Memory Stream in C#

This article shows how to use memory stream to read byte[] array and can use to write some file in memory.

This code shows how to use MemoryStream class and its member to read data in memory stream, which can be used to save it from there.

using System;
using
System.IO;
using
System.Text;
class
MemoryStreamSample
{
static void
Main()
{
int
count;
//GetByteData function to get Byte data like if you fetch Image column data from sqlserver or somewhere.
byte
[] byteArray = getByteData();
MemoryStream memStream =
new
MemoryStream(ByteArray);
// Write the second string to the stream, byte by byte.
count = 0;
// Write the stream properties to the console.
Console.WriteLine(
"Capacity = {0}, Length = {1}, Position = {2}\n",
memStream.Capacity.ToString(),
memStream.Length.ToString(),
memStream.Position.ToString());
// Set the position to the beginning of the stream.
memStream.Seek(0, SeekOrigin.Begin);
// Read the first 20 bytes from the stream.
byteArray = new byte
[memStream.Length];
count = memStream.Read(byteArray, 0, 20);
// Read the remaining bytes, byte by byte.
while
(count < memStream.Length)
{
byteArray[count++] = Convert.ToByte(memStream.ReadByte());
}
// Decode the byte array into a char array
// and write it to the console.
charArray = new char
[uniEncoding.GetCharCount(byteArray, 0, count)];
uniEncoding.GetDecoder().GetChars(byteArray, 0, count, charArray, 0);
Console.WriteLine(charArray);
}
}