a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

C# byte數(shù)組與Image相互轉(zhuǎn)換的方法

2020-01-24 03:06:44
字體:
供稿:網(wǎng)友

功能需求:

1、把一張圖片(png bmp jpeg bmp gif)轉(zhuǎn)換為byte數(shù)組存放到數(shù)據(jù)庫。

2、把從數(shù)據(jù)庫讀取的byte數(shù)組轉(zhuǎn)換為Image對象,賦值給相應(yīng)的控件顯示。

3、從圖片byte數(shù)組得到對應(yīng)圖片的格式,生成一張圖片保存到磁盤上。

這里的Image是System.Drawing.Image。

以下三個(gè)函數(shù)分別實(shí)現(xiàn)了上述三個(gè)需求:

復(fù)制代碼 代碼如下:

// Convert Image to Byte[]
        private byte[] ImageToByte(Image image)
        {
            ImageFormat format = image.RawFormat;
            using (MemoryStream ms = new MemoryStream())
            {
                if (format.Equals(ImageFormat.Jpeg))
                {
                    image.Save(ms, ImageFormat.Jpeg);
                }
                else if (format.Equals(ImageFormat.Png))
                {
                    image.Save(ms, ImageFormat.Png);
                }
                else if (format.Equals(ImageFormat.Bmp))
                {
                    image.Save(ms, ImageFormat.Bmp);
                }
                else if (format.Equals(ImageFormat.Gif))
                {
                    image.Save(ms, ImageFormat.Gif);
                }
                else if (format.Equals(ImageFormat.Icon))
                {
                    image.Save(ms, ImageFormat.Icon);
                }
                byte[] buffer = new byte[ms.Length];
                //Image.Save()會改變MemoryStream的Position,需要重新Seek到Begin
                ms.Seek(0, SeekOrigin.Begin);
                ms.Read(buffer, 0, buffer.Length);
                return buffer;
            }
        }

        // Convert Byte[] to Image
        private Image ByteToImage(byte[] buffer)
        {
            MemoryStream ms = new MemoryStream(buffer);
            Image image = System.Drawing.Image.FromStream(ms);
            return image;
        }

        // Convert Byte[] to a picture
        private string CreateImageFromByte(string fileName, byte[] buffer)
        {
            string file = fileName; //文件名(不包含擴(kuò)展名)
            Image image = ByteToImage(buffer);
            ImageFormat format = image.RawFormat;
            if (format.Equals(ImageFormat.Jpeg))
            {
                file += ".jpeg";
            }
            else if (format.Equals(ImageFormat.Png))
            {
                file += ".png";
            }
            else if (format.Equals(ImageFormat.Bmp))
            {
                file += ".bmp";
            }
            else if (format.Equals(ImageFormat.Gif))
            {
                file += ".gif";
            }
            else if (format.Equals(ImageFormat.Icon))
            {
                file += ".icon";
            }
            //文件路徑目錄必須存在,否則先用Directory創(chuàng)建目錄
            File.WriteAllBytes(file, buffer);
            return file;
        }

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产精品国产三级国产aⅴ无密码 | 成人小视频在线观看 | 国产精品久久二区 | 天天久久| 国产精品久久久久久久久久久久冷 | 播放毛片 | 中文字幕一区二区三区乱码图片 | 成人一区二区三区久久精品嫩草 | 亚洲精品免费观看视频 | 欧美国产在线观看 | 97久久香蕉国产线看观看 | 中文字幕第六页 | 欧美成人h版在线观看 | 色综合免费视频 | 中文字幕亚洲精品 | 国产精品免费一区二区 | 亚洲天堂一区 | 亚洲电影一区二区 | 国产又粗又长又硬又猛电影 | 欧美日本韩国一区二区 | 欧美性生活视频 | 欧美精品一区二区三区在线播放 | 中文字幕日本在线观看 | 国产精品美女久久久久aⅴ国产馆 | 日摸夜操 | 成人综合在线观看 | 一 级做人爱全视频在线看 一级黄色裸体片 | 亚洲欧美在线免费观看 | 亚洲九九 | 久久精精品 | 国产精品爱久久久久久久 | 视频一区二区三区在线观看 | 国产91久久精品一区二区 | 日本黄色免费观看 | 天天天天天天天天干 | 最新黄色网址在线播放 | 激情网页 | 成人免费一区二区三区视频网站 | 成人av片在线观看 | 天天插天天操天天干 | 日韩免费视频中文字幕 |