1、二進制轉換為圖檔
MemoryStream ms = new MemoryStream(bytes); ms.Position = 0; Image img = Image.FromStream(ms); ms.Close();
2、二進制與字元串的互相轉換
System.Text.UnicodeEncoding converter = new System.Text.UnicodeEncoding(); byte[] inputBytes =converter.GetBytes(inputString); string inputString = converter.GetString(inputBytes); string inputString = System.Convert.ToBase64String(inputBytes); byte[] inputBytes = System.Convert.FromBase64String(inputString); FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read);
3、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; }
4、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; }
5、Bitmap 轉化為 Byte[]
//Bitmap 轉化為 Byte[] Bitmap BitReturn = new Bitmap(); byte[] bReturn = null; MemoryStream ms = new MemoryStream(); BitReturn.Save(ms, System.Drawing.Imaging.ImageFormat.Png); bReturn = ms.GetBuffer();