图片,二进制文件互换

来源:互联网 发布:将照片从mac导入iphone 编辑:程序博客网 时间:2024/04/29 11:15
//功能:能在让图片文件转换为二进制文件,然后再让二进制文件转换为图片文件


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;


using System.Linq;
using System.Text;
using System.Windows.Forms;


using System.IO;//这两个命名空间是必须的
using System.Drawing;






namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }




        /// <summary>
        /// 把图片转换为二进制文件
        /// </summary>
        /// <param name="fileName">文件名(绝对路径)</param>
        /// <returns></returns>
        public byte[] SetimageToByteArray(string fileName)
        {
            FileStream fs = new FileStream(fileName, FileMode.Open);//打开文件
            int streamLength = (int)fs.Length;//计算文件的长度
            byte[] image = new byte[streamLength];//新建一个能够保存二进制文件的变量
            fs.Read(image, 0, streamLength);//从流中读取字节块并将该数据写入给定缓冲区中(image)。
            fs.Close();
            return image;
        }




        /// <summary>
        /// 把二进制文件转换为图片文件
        /// </summary>
        /// <param name="mybyte"></param>
        /// <returns></returns>
        public Image SetByteToimage(byte[] mybyte)
        {
            Image image;
            MemoryStream mymemorystream = new MemoryStream(mybyte,0,mybyte.Length);
            image = Image.FromStream(mymemorystream);
            return image;
        }
        //private void reGdi()
        //{
        //    Image MyIma;
        //    MyIma = this.pictureBox1.Image;
        //    Bitmap newPic = new Bitmap(MyIma.Width, MyIma.Height);
        //    Graphics g = Graphics.FromImage(newPic);
        //    g.DrawImage(MyIma, 0, 0, newPic.Width, newPic.Height);
        //    g.Dispose();
        //    this.pictureBox2.Image = newPic;


       // }


        /// <summary>
        /// 点击时显示图片,我脱了一个控件picture.image=img;
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            string name = "D:\\images\\image0.jpg";
            byte[] itoby=  SetimageToByteArray(name);
            Image img=   SetByteToimage(itoby);
            pictureBox1.Image = img;
        }
    }
}
原创粉丝点击