关于以二进制形式保存图片到数据库

图片说明

如图,现在要实现这样的功能:点击"打开图片",能获取到一张本地图片的二进制数据,将该数据保存在一个变量里面,然后点击"录入"按钮,图片的二进制码就会被传入到数据库中某张表里,请问怎么实现?

你的流程说的很清楚啊,接下来就是调用api' ,写方法啊。

http://www.sufeinet.com/thread-1261-1-1.html

将图片以二进制形式存入数据库中

打开图片文件,读取其全部的文件内容,写入数据库。这个过程,如果需要具体的操作,必须要知道是什么数据库吧。

    byte[] data = null;
          private void btnOpenImage_Click(object sender, EventArgs e)
    {
        OpenFileDialog openFi = new OpenFileDialog();
        openFi.Filter = "图像文件(JPeg, Gif, Bmp, etc.)|*.jpg;*.jpeg;*.gif;*.bmp;*.tif; *.tiff; *.png| JPeg 图像文件(*.jpg;*.jpeg)"
            + "|*.jpg;*.jpeg |GIF 图像文件(*.gif)|*.gif |BMP图像文件(*.bmp)|*.bmp|Tiff图像文件(*.tif;*.tiff)|*.tif;*.tiff|Png图像文件(*.png)"
            + "| *.png |所有文件(*.*)|*.*";
        if (openFi.ShowDialog() == DialogResult.OK)
        {
            data = GetPictureData(openFi.FileName);//这就是要存的数据
            this.Background = openFi.FileName;
        }
    }

             public byte[] GetPictureData(string imagepath)
    {
        /**/
        ////根据图片文件的路径使用文件流打开,并保存为byte[] 
        FileStream fs = new FileStream(imagepath, FileMode.OpenOrCreate);//可以是其他重载方法 
        byte[] byData = new byte[fs.Length];
        fs.Read(byData, 0, byData.Length);
        fs.Close();
        GC.Collect();
        return byData;
    }