Asp.net把图片存入数据库和读取图片的方法


网上关于ASP.NET上传图片到数据库的资料非常多,常用的如下:
存储图片类型数据有以下几种方式:
1.将图片转换为二进制数组(byte[])

复制代码 代码如下:

byte[] fileData = this.FileUpload1.FileBytes;

2. 根据路径将文件转换为2进制数组
复制代码 代码如下:

代码
public byte[] returnbyte(string strpath)
{
 // 以二进制方式读文件
    FileStream fsMyfile = new FileStream(strpath, FileMode.OpenOrCreate, FileAccess.ReadWrite);
// 创建一个二进制数据流读入器,和打开的文件关联
    BinaryReader brMyfile = new BinaryReader(fsMyfile);
// 把文件指针重新定位到文件的开始
    brMyfile.BaseStream.Seek(0, SeekOrigin.Begin);
   byte[] bytes = brMyfile.ReadBytes(Convert.ToInt32(fsMyfile.Length.ToString()));
// 关闭以上new的各个对象
    brMyfile.Close();
   return bytes;
}

3img 类型得到二进制数组
复制代码 代码如下:

public static byte[] Getbyte(Image img)
{
    MemoryStream stream = new MemoryStream();
    img.Save(stream, ImageFormat.Jpeg);
    byte[] mydata = new byte[stream.Length];
    mydata = stream.ToArray();
    stream.Close();
    return mydata;
 }

读取image类型的数据并显示在网页上的方式如下:
1。直接返回image 类型
复制代码 代码如下:

private System.Drawing.Image getImageDataFromOracle()
{
string sql = "select IMGDATA from t_img where imgID=100";
string strconn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionStringForOracle"].ToString();
OracleConnection oraConn = new OracleConnection(strconn);
OracleCommand oraComm = new OracleCommand(sql, oraConn);
oraConn.Open();
byte[] fileData = (byte[])oraComm.ExecuteScalar();
oraConn.Close();
System.IO.MemoryStream ms = new System.IO.MemoryStream(fileData);
System.Drawing.Image img = System.Drawing.Image.FromStream(ms);
return img;
}

2.利用页面输入来显示图片
页面ImageShow.aspx (Page_Load方法)
复制代码 代码如下:

 protected void Page_Load(object sender, EventArgs e)
{
  byte[] b_logoImg = (byte[])dt_channelImg.Rows[0]["LogoImage"]; //得到byte[] 数组,这里只是举个例子
   if (b_logoImg.Length > 0)
   {
    System.Drawing.Image logoImg;
    MemoryStream ms = new MemoryStream(b_logoImg);
    Response.Clear();
    Response.ContentType = "image/gif";
    Response.OutputStream.Write(b_logoImg, 0, b_logoImg.Length);
    Response.End();
  }
}

图片路径写成为:<img src = "ImageShow.aspx" />



相关阅读:
js实现iframe框架取值的方法(兼容IE,firefox,chrome等)
jquery使用ul模拟select实现表单美化的方法
PHP获取音频文件的相关信息
Android处理图像数据转换的各种方法
C#特性 扩展方法
php使用百度ping服务代码实例
C语言中用于产生随机数的函数使用方法总结
js将当前时间格式转换成时间搓(自写)
使用GruntJS构建Web程序之Tasks(任务)篇
MongoDB中的bson介绍和使用实例
Java的Struts框架中的主题模板和国际化设置
C++设计模式之单例模式
JavaScript中使用ActiveXObject操作本地文件夹的方法
android照相、相册获取图片剪裁报错的解决方法
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 埋在心底的淡忘 事业单位员工辞职报告模板 「提线木偶」 请记住,不落泪。 妈妈对我的爱300字 九月的祝福200字作文 人人知诚信,人人讲诚信700字 我爱我家苏州400字 教师创先争心得体会 七年级下数学期末复习计划 励志成功:真正决定人生高度的,是你做事的速度 高中高三作文1200字:“住”在角落里的阳光 优秀演讲稿:不忘国耻,振兴中华 小学四年级作文400字:日记一则 杨晨 我的暑假生活英语作文 学溜冰的作文250字 县委书记在县级领导座谈会上的讲话 28句关于励志的句子:做事不怕慢,就怕停,短停还能补,长停事不成。 这就是我,活泼可爱的我 羽毛球比赛方案 小学四年级作文1000字:会说外语的猫 以引水工程改造为载体 加快新农村建设步伐 四年级语文培优补差工作计划 气象局纪念建党94周年活动总结 学生纪念抗战胜利70周年演讲稿 三篇 2015高中语文教学反思 春日絮絮 最新的青年工人入党申请书范文 中秋国庆双节游 是不是欢乐过后总是忧伤? 最难开口的事就是,初次的问好,和最终的道别 用下半身思考 在中共XX安市XX区第十次代表大会上的报告 2015转正申请书格式 关于爱情,真话往往最残忍 创业者协会工作总结 选举班干部250字 爷爷,我想对你说 "六一”儿童节作文 党建93周年比赛演讲稿 企业培训师培训感言 一次性筷子的哭诉 蓑依:女孩子一定要过几年一个人的生活 馨蕊筱沫日志:被忽略的水晶婚 习惯作文600字_习惯议论文600字 《如水》串词;《如水》歌词 比谁算的快作文300字 农村经济社会发展状况调研报告 有关难过的个性签名句子 即便是自己也会让自己失望,更何况别人 党工共建创先争优工作总结推进会经验材料 2011年业务员年终工作总结报告

Copyright © 2016 phpStudy |