vs2008数据库打开全是16进制数 D:\我的文档\桌面\C9YK[AFN%_7PZUB7I@K]Q8P.jpg 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 传递到CSDN 在引用地址D:\我的文档\桌面\C9YK[AFN%_7PZUB7I@K]Q8P.jpgfile:///D:\我的文档\桌面\C9YK[AFN%_7PZUB7I@K]Q8P.jpg二进制图片显示上传二进制if (FileUpLogo.HasFile){ //取得上传文件的大小 int FileLen = FileUpLogo.PostedFile.ContentLength; Byte[] FileData = new Byte[FileLen]; //创建访问客户端上传文件的对象 HttpPostedFile hp = FileUpLogo.PostedFile; //创建数据流对象 System.IO.Stream sr = hp.InputStream; //将图片数据放到FileData数组对象实例中,0代表数组指针的起始位置,FileLen代表指针的结束位置 sr.Read(FileData, 0, FileLen); //将FileData 赋值给实体 brandModel.fld_logo = FileData;}或者HttpPostedFile upFile = up_file.PostedFile;//HttpPostedFile对象,用来读取上传图片的属性 fileLength = upFile.ContentLength;//记录文件的长度 try { if(fileLength==0)//当文件长度为0的时候 { txtMessage.Text = "请选择要上传的文件!"; } else { byte[] fileByte = new byte[fileLength];//用图片的长度来初始化一个字节数组存储临时的图片文件 Stream fileStream = upFile.InputStream;//建立文件流对象 fileStream.Read(fileByte,0,fileLength);//读取图片数据到临时存储体fileByte,0为数据指针位置,fileLength为数据长度 string connString = "Data Source=192.168.1.250;database=image;uid=pwqzc;pwd=cn0088"; SqlConnection conn = new SqlConnection(connString);//初始化数据库连接 string insertStr = "insert into image (image_data,image_content_type,image_description,image_size) values (@image_data,@image_content_type,@image_description,@image_size)"; //插入数据库语句 SqlCommand comm = new SqlCommand(insertStr,conn); comm.Parameters.Add(new SqlParameter("@image_data",SqlDbType.Image));//添加参数 comm.Parameters["@image_data"].Value = fileByte;//给参数赋值 comm.Parameters.Add(new SqlParameter("@image_content_type",SqlDbType.VarChar,50)); comm.Parameters["@image_content_type"].Value = upFile.ContentType;//记录图片类型 comm.Parameters.Add(new SqlParameter("@image_description",SqlDbType.VarChar,50)); comm.Parameters["@image_description"].Value = txtDescription.Text;//把其他的表单数据上传 comm.Parameters.Add(new SqlParameter("@image_size",SqlDbType.Int,4)); comm.Parameters["@image_size"].Value = upFile.ContentLength;//记录图片长度,读取数据的时候使用 conn.Open();//打开数据库连接 comm.ExecuteNonQuery();//添加数据 conn.Close();//关闭数据库 txtMessage.Text = "你已经成功的上传了图片"; } } catch(Exception ex) { txtMessage.Text = ex.Message.ToString(); } } }读取的时候<img src="a.aspx?id=x" />show.aspx 的后台private void Page_Load(object sender, System.EventArgs e) { string strID = Request.QueryString["id"]; string sqlstr = "select photo from Tb where id=@id"; SqlConnection myConnection = new SqlConnection(connstr); SqlCommand myCommand = new SqlCommand(sqlstr, myConnection); myCommand.AddWithValue("@id", strID); try { myConnection.Open(); SqlDataReader dr = myCommand.ExecuteReader(CommandBehavior.CloseConnection); if (dr.Read()) { Response.Clear(); Response.ContentType = "image/gif"; Response.BinaryWrite((byte[])dr["photo"]); } myConnection.Close(); } catch (SqlException ex) { } Response.End(); } ASP.NET+AJAX,怎么实现呢? FCKeditor出错 再来个入门问题:自定义控件可以使用CSS吗? asp2.0中如何在IE状态栏中隐藏超链接的地址? 给大家提供一个地址,大家看看,这个网站吧。。评价一下。。 《.net框架程序设计》这本书怎么样?今天刚把它买回来! 如何把通过treeView打开的页面都关闭? 高手求救,资源文件乱码问题 求助! 网上购物系统用到哪些研究方法和手段,急! 可以用ASP.net动态生成 水晶报表吗? 大数据量同时访问一个ashx文件的效率问题 如何判断picturebox是否在播放视频。
二进制图片显示上传二进制
if (FileUpLogo.HasFile)
{
//取得上传文件的大小
int FileLen = FileUpLogo.PostedFile.ContentLength;
Byte[] FileData = new Byte[FileLen];
//创建访问客户端上传文件的对象
HttpPostedFile hp = FileUpLogo.PostedFile;
//创建数据流对象
System.IO.Stream sr = hp.InputStream;
//将图片数据放到FileData数组对象实例中,0代表数组指针的起始位置,FileLen代表指针的结束位置
sr.Read(FileData, 0, FileLen);
//将FileData 赋值给实体
brandModel.fld_logo = FileData;
}
或者HttpPostedFile upFile = up_file.PostedFile;//HttpPostedFile对象,用来读取上传图片的属性
fileLength = upFile.ContentLength;//记录文件的长度
try
{
if(fileLength==0)//当文件长度为0的时候
{
txtMessage.Text = "请选择要上传的文件!";
}
else
{
byte[] fileByte = new byte[fileLength];//用图片的长度来初始化一个字节数组存储临时的图片文件
Stream fileStream = upFile.InputStream;//建立文件流对象
fileStream.Read(fileByte,0,fileLength);//读取图片数据到临时存储体fileByte,0为数据指针位置,fileLength为数据长度
string connString = "Data Source=192.168.1.250;database=image;uid=pwqzc;pwd=cn0088";
SqlConnection conn = new SqlConnection(connString);//初始化数据库连接
string insertStr = "insert into image (image_data,image_content_type,image_description,image_size) values (@image_data,@image_content_type,@image_description,@image_size)";
//插入数据库语句
SqlCommand comm = new SqlCommand(insertStr,conn);
comm.Parameters.Add(new SqlParameter("@image_data",SqlDbType.Image));//添加参数
comm.Parameters["@image_data"].Value = fileByte;//给参数赋值
comm.Parameters.Add(new SqlParameter("@image_content_type",SqlDbType.VarChar,50));
comm.Parameters["@image_content_type"].Value = upFile.ContentType;//记录图片类型
comm.Parameters.Add(new SqlParameter("@image_description",SqlDbType.VarChar,50));
comm.Parameters["@image_description"].Value = txtDescription.Text;//把其他的表单数据上传
comm.Parameters.Add(new SqlParameter("@image_size",SqlDbType.Int,4));
comm.Parameters["@image_size"].Value = upFile.ContentLength;//记录图片长度,读取数据的时候使用
conn.Open();//打开数据库连接
comm.ExecuteNonQuery();//添加数据
conn.Close();//关闭数据库
txtMessage.Text = "你已经成功的上传了图片";
}
}
catch(Exception ex)
{
txtMessage.Text = ex.Message.ToString();
}
}
}读取的时候
<img src="a.aspx?id=x" />
show.aspx 的后台
private void Page_Load(object sender, System.EventArgs e)
{
string strID = Request.QueryString["id"];
string sqlstr = "select photo from Tb where id=@id";
SqlConnection myConnection = new SqlConnection(connstr);
SqlCommand myCommand = new SqlCommand(sqlstr, myConnection);
myCommand.AddWithValue("@id", strID);
try
{
myConnection.Open();
SqlDataReader dr = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
if (dr.Read())
{
Response.Clear();
Response.ContentType = "image/gif";
Response.BinaryWrite((byte[])dr["photo"]);
}
myConnection.Close();
}
catch (SqlException ex)
{
}
Response.End();
}