é¦å
æ°æ®åºéé¢æä¸å段类å为image,æè¿éæ¯ä¸ä¸ªçªä½åºç¨ç¨åºï¼ä¹æ¯å°å¾ç以äºè¿å¶çå½¢å¼ä¿åè³æ°æ®åºçï¼æè·¯æ¯ä¸æ ·ç
byte[] photo;
public byte[] Photo
{
get { return photo; }
set { photo = value; }
}
FileStream fs;
string fileName = string.Empty;
private void btnChooose_Click(object sender, EventArgs e)
{
OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.Filter = "*.jpg|*.jpg|*.gif|*.gif|*.bmp|*.bmp";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
fileName = fileDialog.FileName;
fs = new FileStream(fileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
pictureBox.Image = Image.FromStream(fs);
fs.Close();
}
}
private void btnSave_Click(object sender, EventArgs e)
{
if (!string.IsNullOrEmpty(fileName))
{
fs = new FileStream(fileName, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
byte[] imageByte = new byte[fs.Length];
fs.Read(imageByte, 0, (int)fs.Length);
Photo = imageByte;
fs.Close();
AddImage();
}
else
{
MessageBox.Show("请éæ©å¾ç");
}
}
private void AddImage()
{
using (SqlConnection connection = new SqlConnection(connString))
{
connection.Open();
SqlCommand command = new SqlCommand("PROC_ADDIMAGE", connection);
command.CommandType = CommandType.StoredProcedure;
command.Parameters.Add("@IMAGE", SqlDbType.Image).Value = Photo;
int rows = command.ExecuteNonQuery();
if (rows > 0)
{
MessageBox.Show("æ·»å æå");
}
else
{
MessageBox.Show("æ·»å 失败");
}
}
}
private void Form1_Load(object sender, EventArgs e)
{
}
int index;
/// <summary>
/// è·åå¾ç
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnGetImage_Click(object sender, EventArgs e)
{
/// <summary>
/// åå¾ççéå
/// </summary>
IList<Form1> form1List = new List<Form1>();
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
SqlCommand command = new SqlCommand("PROC_GETIMAGE", conn);
command.CommandType = CommandType.StoredProcedure;
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
Form1 form1 = new Form1();
form1.Photo = (byte[])reader["Photo"];
form1List.Add(form1);
}
}
}
if (form1List.Count == 1)
{
MemoryStream imageStream = new MemoryStream(form1List[0].Photo);
pictureBox.Image = Image.FromStream(imageStream);
}
else if (form1List.Count > 1)
{
index++;
if (index < form1List.Count)
{
btnGetImage.Text = "ä¸ä¸å¼ ";
MemoryStream imageStream = new MemoryStream(form1List[index].Photo);
pictureBox.Image = Image.FromStream(imageStream);
}
else
{
index=0;
MemoryStream imageStream = new MemoryStream(form1List[index].Photo);
pictureBox.Image = Image.FromStream(imageStream);
}
}
else
{
MessageBox.Show("åä¸è¿æ²¡æå¾ç");
}
}
/// <summary>
/// æ¸
é¤å¾ç
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnClear_Click(object sender, EventArgs e)
{
pictureBox.Image = null;
}
温馨提示:内容为网友见解,仅供参考
在ASP.NET中怎么图片转换二进制
使用 BinaryFormatter.Serialize 对 Image 对象进行序列化,再用 BinaryFormatter.Deserialize 进行反序列化。
在ASP.NET中怎么图片转换二进制
首先数据库里面有一字段类型为image,我这里是一个窗体应用程序,也是将图片以二进制的形式保存至数据库的,思路是一样的byte[] photo; public byte[] Photo { get { return photo; } set { photo = value; } } FileStream fs; string fileName = string.Empty; private...
高分!ASP.NET中如何把图片以二进制方式存入SQL Server数据库,并能...
1、建所需数据库和表,语句如下:--建立数据库 create database test --使用该数据库 use test --建立存放图片的表 create table piclist(id int Identity primary key,pic Image not null )2、制作上传图片的模块,代码如下:前台html代码:<%@ Page Language="C#" AutoEventWireup="true" CodeF...
怎么将图片转换成二进制,存入数据库,然后怎么读出来并显示
1.将Image图像文件存入到数据库中 我们知道数据库里的Image类型的数据是"二进制数据",因此必须将图像文件转换成字节数组才能存入数据库中.要这里有关数据的操作略写,我将一些代码段写成方法,方便直接调用.\/\/根据文件名(完全路径)public byte[] SetImageToByteArray(string fileName){ FileStream fs = ...
asp.net上传图片缩放并转成二进制
您可以把原图路径放入数据库中,读取的时候直接读路径就可以,缩略图路径也放入数据库中,一样的,一个表,两个字段,就行,为什么一定要把图片转换成二进制呢?非要转换二进制的话,保存图片的时候,直接保存在表中,读取的时候,一直把字段帮顶给 ...
.NET中如何循环遍历一个文件夹中的图片并将图片以二进制的方式存入sqlse...
\/\/byte[] photo = br.ReadBytes((int)fs.Length); \/\/ br.Close(); \/\/fs.Close(); #endregion \/\/把图片转换成二进制 MemoryStream ms = new MemoryStream(); img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg); byte[] photo = ms.GetBuffer(); ms.Close...
asp.net中如何把文件转成二进制再转回来
将文件用BinaryFomatter二进制序列化到流中,然后操作流就行了。
asp.net使用gridview显示MySql里面的图片(二进制存储)。
1.将图片以二进制存入数据库 2.读取二进制图片在页面显示 3.设置Image控件显示从数据库中读出的二进制图片 4.GridView中ImageField以URL方式显示图片 5.GridView显示读出的二进制图片 设置Image控件显示从数据库中读出的二进制图片 --- SqlConnection myConn = new SqlConnection("Data Source=192.168....
asp.net中怎样将数据库中二进制图片读取出来并做成图片播动效果 急...
读出二进制为byte[]这后转成流,之后从流转成bmp
asp.net中如何将二进制图片存入有id(自增长、主键)、studentid(从登陆页...
\/\/修改二进制流 \/\/SqlCommand com = new SqlCommand("update Headimges set imgname=@imgdata where studentid=@aid",con);if (Session["sid"] != null && Session["sid"] != ""){ com.Parameters.Add("@imgdata", SqlDbType.Image);com.Parameters["@imgdata"].Value = FileData;com...