標籤:stream 和 byte 之間的轉換
概述
本篇主要講解Stream 和 byte[] 之間的轉換
Stream 和 byte[] 之間的轉換
// <summary>/// 將 Stream 轉成 byte[]/// </summary>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
/// <summary>/// 將 byte[] 轉成 Stream/// </summary>public Stream BytesToStream(byte[] bytes){ Stream stream = new MemoryStream(bytes); return stream;}
Stream 和 檔案之間的轉換
/// <summary>/// 將 Stream 寫入檔案/// </summary>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
/// <summary>/// 從檔案讀取 Stream/// </summary>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;}
總結
stream圖片以資料流格式的進行儲存,轉換為byte[]格式儲存進資料庫中。
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
C# Stream 和 byte[] 之間的轉換