二进制--图片相互转换

时间:2021-07-03 00:51:23

图片转化为二进制

picpath为图片地址

using (FileStream fs = new FileStream(picpath, FileMode.Open, FileAccess.Read))
                          {
                              using (BinaryReader read = new BinaryReader(fs))
                               {
                                  photobyte = read.ReadBytes((int)fs.Length);
                                   s1 = photobyte.Length;
                              }
                     }

二进制转化为图片

 string sa = dsimg.Tables[0].Rows[0]["image"].ToString();  //读出的二进制字符串
                        System.Text.Encoding enc = System.Text.Encoding.UTF8; 
                        photobyte = enc.GetBytes(sa);   //转换为二进制
                        Image image1 = BytesToImage(photobyte);  
                        image1.Save(@"D:\1.JPG", System.Drawing.Imaging.ImageFormat.Jpeg); 

        //保存为d盘1.jpg

二进制转化为图片保存

将D:\淘宝图片\1752967.jpg转换为二进制,之后再从二进制转化为图片保存成D:\1.jpg

 class Program
    {
        public static Image BytesToImage(byte[] bytes)
        {
           MemoryStream ms = new MemoryStream(bytes);
            Image image = new Bitmap(ms, true);
           return image;
        }

        public static void Main(string[] args)
        {
            byte[] photobyte;
            int s1;
            using (FileStream fs = new FileStream(@"D:\淘宝图片\1752967.jpg", FileMode.Open, FileAccess.Read))
            {
                using (BinaryReader read = new BinaryReader(fs))
                {
                    photobyte = read.ReadBytes((int)fs.Length);
                    s1 = photobyte.Length;
                    Image image1 = BytesToImage(photobyte);
                   image1.Save(@"E:\1.JPG", System.Drawing.Imaging.ImageFormat.Jpeg);
                }
            }

    }

}