-
保存/读取图片到数据库
private void SaveImage(string fileName)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
// Read the file into a byte array
using (FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read))
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
byte[] imageData = new Byte[fs.Length];
fs.Read(imageData, 0, (int)fs.Length);
![](/Images/OutliningIndicators/InBlock.gif)
using (SqlConnection conn = new SqlConnection(connectionString))
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
string sql = "insert into image (imagefilename,blobdata) values (@filename,@blobdata)";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add("@filename",SqlDbType.Text);
cmd.Parameters["@filename"].Direction = ParameterDirection.Input;
cmd.Parameters.Add("@blobdata", SqlDbType.Image);
cmd.Parameters["@blobdata"].Direction = ParameterDirection.Input;
// Store the byte array within the image field
cmd.Parameters["@filename"].Value = fileName;
cmd.Parameters["@blobdata"].Value = imageData;
conn.Open();
if (cmd.ExecuteNonQuery() == 1)
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
MessageBox.Show("Done");
}
}
}
}
![](/Images/OutliningIndicators/None.gif)
private void LoadImage(string fileName)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
using (SqlConnection conn = new SqlConnection(connectionString))
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
string sql = "select blobdata from Image where ImageFileName like @filename";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add("@filename", SqlDbType.Text);
cmd.Parameters["@filename"].Value = fileName;
![](/Images/OutliningIndicators/InBlock.gif)
conn.Open();
![](/Images/OutliningIndicators/InBlock.gif)
object objImage = cmd.ExecuteScalar();
![](/Images/OutliningIndicators/InBlock.gif)
byte[] buffer = (byte[])objImage;
![](/Images/OutliningIndicators/InBlock.gif)
BinaryWriter bw = new BinaryWriter(new FileStream("C:\\abcd.png", FileMode.Create));
bw.Write(buffer);
bw.Close();
![](/Images/OutliningIndicators/InBlock.gif)
MemoryStream ms = new MemoryStream(buffer);
Image bgImage = Image.FromStream(ms);
ms.Close();
this.BackgroundImage = bgImage;
}
}
![](/Images/OutliningIndicators/None.gif)
-
相关阅读:
【转】周杰伦在哪几届金曲奖中分别得的哪些奖?
【转】Linux shell的&&和||
【转】Ubuntu13.04配置:Vim+Syntastic+Vundle+YouCompleteMe
【转】Notepad++中Windows,Unix,Mac三种格式之间的转换
【转】vim环境设置和自动对齐
【转】Vim自动补全插件----YouCompleteMe安装与配置
【转】foxmail邮箱我已进清理了为什么还是说我的邮箱已满
强化学习
奇人有奇书(李渔、张岱、陈继儒、吴敬梓)
奇人有奇书(李渔、张岱、陈继儒、吴敬梓)
-
原文地址:https://www.cnblogs.com/sskset/p/591771.html
Copyright © 2020-2023
润新知