1. 程式人生 > >C# Stream 和 byte[] 之間的轉換(檔案流的應用)

C# Stream 和 byte[] 之間的轉換(檔案流的應用)

一. 二進位制轉換成圖片
MemoryStream ms = new MemoryStream(bytes);

ms.Position = 0;

Image img = Image.FromStream(ms);

ms.Close();

this.pictureBox1.Image

二. C#中byte[]與string的轉換程式碼

1、System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding();
  byte[] inputBytes =converter.GetBytes(inputString);
  
string inputString = converter.GetString(inputBytes); 2string inputString = System.Convert.ToBase64String(inputBytes);   byte[] inputBytes = System.Convert.FromBase64String(inputString); FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); 三. C# Stream 和
byte[] 之間的轉換 /// 將 Stream 轉成 byte[] public byte[] StreamToBytes(Stream stream) { byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 設定當前流的位置為流的開始 stream.Seek(0, SeekOrigin.Begin); return bytes; } /// 將 byte[] 轉成 Stream public Stream BytesToStream(byte[] bytes) { Stream stream
= new MemoryStream(bytes); return stream; } 四. Stream 和 檔案之間的轉換 將 Stream 寫入檔案 public void StreamToFile(Stream stream,string fileName) { // 把 Stream 轉換成 byte[] byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); // 設定當前流的位置為流的開始 stream.Seek(0, SeekOrigin.Begin); // 把 byte[] 寫入檔案 FileStream fs = new FileStream(fileName, FileMode.Create); BinaryWriter bw = new BinaryWriter(fs); bw.Write(bytes); bw.Close(); fs.Close(); } 五. 從檔案讀取 Stream public Stream FileToStream(string fileName) { // 開啟檔案 FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read); // 讀取檔案的 byte[] byte[] bytes = new byte[fileStream.Length]; fileStream.Read(bytes, 0, bytes.Length); fileStream.Close(); // 把 byte[] 轉換成 Stream Stream stream = new MemoryStream(bytes); return stream; }