C#有很多种上传图片的方式,今天介绍一种将本地图片转换成二进制保存到数据库的方式。
一、将图片转换成二进制工具
///
/// 将本地图片转换成二进制
///
///
///
public static Byte[] GetContent(string filepath)
{
FileStream fs=new FileStream(filepath, FileMode.Open, FileAccess.Read);
Byte[] byData=new Byte[fs.Length];
fs.Read(byData, 0, byData.Length);
fs.Close();
return byData;
}
二、将本地图片转换成二进制
OpenFileDialog ofd=new OpenFileDialog();
ofd.Title="请选择上传的图片";
//OpenFileDialog.Filter 属性 根据二手QQ卖号需要增减
ofd.Filter="图片格式|.jpg;.gif;.png;.ico";
ofd.Multiselect=false;
if (ofd.ShowDialog()==System.Windows.Forms.DialogResult.OK)
{
string filePath=ofd.FileName;
Bitmap bmPic=new Bitmap(filePath);
Point ptLoction=new Point(bmPic.Size);
//下面这里主要处理图片自适应显示
if (ptLoction.X > pictureBox1.Size.Width || ptLoction.Y > pictureBox1.Size.Height)
{
pictureBox1.SizeMode=PictureBoxSizeMode.Zoom;
}
else
{
pictureBox1.SizeMode=PictureBoxSizeMode.CenterImage;
}
pictureBox1.LoadAsync(filePath);
byte[] bytesImg=GetContent(filePath);
三、将二进制流保存到数据库
运用相应的SQL语句保存即可。