ASP.NET上传文件的示例分析
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,ASP.NET上传文件的示例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、ASP.NET上传文件数据库。存储文件的数据库中的
千家信息网最后更新 2025年11月16日ASP.NET上传文件的示例分析
ASP.NET上传文件的示例分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、ASP.NET上传文件数据库。
存储文件的数据库中的字段为jimage,类型为image。
在代码中定义类型为byte[]的一个变量buf,在上传组件的PostFile中,从它的InputStream读出字节数组,将buf赋给数据字段jimage就可以了。
int len = this.File1.PostedFile.ContentLength; byte[] buf = new byte[len]; Stream i = this.File1.PostedFile.InputStream; i.Read(buf,0,buf.Length); news.jimage=buf; //news为新闻类,jimage为它的图片属性,即对应表中的image i.Close();
显示图像:
图片的显示也很简单,在Persister中注意一下:
SqlDataReader reader=SqlHelper.ExecuteReader ("select jimage from news"); if( reader.Read() ) { news.jimage=(byte[])reader["jimage"]; } reader.Close();得到byte[]的内容,要显示也比较简单,在Page_Load()方法中加两句话即可:
Response.ContentType="image/jpeg"; Response.BinaryWrite(ti.content);
这样就可以输出图像了,如果想对图像做一点调整,如旋转,转换格式、获得图片格式(是jpg 还是 gif),请参考下面代码:
//同样,声明输出不是HTML而是image Response.ContentType="image/jpeg"; //从byte[]得到一个image对象 System.Drawing.Image bmap = Bitmap.FromStream (new MemoryStream(ti.content)); //操作一下这个图像 bmap.RotateFlip(RotateFlipType.Rotate180FlipY); //输出到页面上 bmap.Save(Response.OutputStream,System. Drawing.Imaging.ImageFormat.Jpeg); //释放image bmap.Dispose();
要显示图片在某一个image控件上,可采用下法:
要显示图片的位置放一个image控件然后将它的src指向这个页面就行了!
例如:
页面:ViewImage.aspx
〈%@Import Namespace="System.IO"% 〉 〈%@Import Namespace="System.Data"% 〉 〈%@Import Namespace="System.Data.SqlClient"% 〉 〈%@ Page Language="C#" Debug="True" % 〉 〈script runat="server" 〉 private void Page_Load(Object sender, System.EventArgs e) { string imgid =Request.QueryString["UserID"]; string connstr="data source=(local);initial catalog=Test;integrated security=SSPI;persist security info=True;packet size=4096"; string sql="SELECT IMGTITLE,imgdata, imgtype FROM ImageStore WHERE id = '"+ imgid "'"; SqlConnection connection = new SqlConnection(connstr); SqlCommand command = new SqlCommand(sql, connection); connection.Open(); SqlDataReader dr = command.ExecuteReader(); if(dr.Read()) { Response.ContentType = dr["imgtype"].ToString(); Response.BinaryWrite( (byte[]) dr["imgdata"] ); Response.Write(dr["IMGTITLE"].ToString()); } connection.Close(); } 〈/script 〉显示图片的页面上放一个image控件imgZYF 在后代码中写:imgZYF.ImageUrl ="ViewImage.aspx?UserID=" +userId
二、ASP.NET上传文件到服务器的磁盘:
页面文件:upload01.aspx
〈%@Pagelanguage="c#"Codebehind="upload01.aspx.cs" AutoEventWireup="false"Inherits="upload01.upload01"%〉 〈!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"〉 〈HTML〉 〈HEAD〉 〈title〉上传到磁盘〈/title〉 〈/HEAD〉 〈body〉 〈formid="Form1"method="post"runat="server"〉 〈TABLEheight="300"cellSpacing="1"cellPadding="1" width="500"border="0"class="bigtable-bj" align="center"〉 〈TR〉 〈TD〉〈FONTface="宋体"〉 〈TABLEid="Table1"style="WIDTH:384px;HEIGHT:54px" cellSpacing="1"cellPadding="1"width="384" border="0"align="center"〉 〈TR〉 〈TD〉选择文件:〈/TD〉 〈TD〉〈INPUTtype="file"id="myfile"runat="server"〉〈/TD〉 〈/TR〉 〈TR〉 〈TDstyle="HEIGHT:21px"〉输入备注:〈/TD〉 〈TDstyle="HEIGHT:21px"〉 〈asp:TextBoxid="TextBox1"runat="server"〉〈/asp:TextBox〉〈/TD〉 〈/TR〉 〈TR〉 〈TD〉〈/TD〉 〈TD〉〈INPUTtype="button"value="上传文件" runat="server"id="Button1"name="Button1"〉 〈INPUTtype="submit"value="清空选择"〉〈/TD〉 〈/TR〉 〈/TABLE〉 〈/FONT〉 〈/TD〉 〈/TR〉 〈/TABLE〉 〈/form〉 〈/body〉 〈/HTML〉 后置代码:upload01.aspx usingSystem; usingSystem.Collections; usingSystem.ComponentModel; usingSystem.Data; usingSystem.Drawing; usingSystem.Web; usingSystem.Web.SessionState; usingSystem.Web.UI; usingSystem.Web.UI.WebControls; usingSystem.Web.UI.HtmlControls; namespaceupload01 { publicclassupload01:System.Web.UI.Page { protectedSystem.Web.UI.HtmlControls.HtmlInputButtonButton1; protectedSystem.Web.UI.WebControls.TextBoxTextBox1; protectedSystem.Web.UI.HtmlControls.HtmlInputFilemyfile; privatevoidPage_Load(objectsender,System.EventArgse) { //昨夜风www.zuoyefeng.com } privatevoidButton1_ServerClick (objectsender,System.EventArgse) { //取得客户端路径及文件名 stringstr=myfile.PostedFile.FileName; //取得ASP.NET上传文件类型,如.jpg stringfilename2=str.Substring (str.LastIndexOf(".")).ToString().Trim(); //取得ASP.NET上传文件大小,单位K doublefilesize=myfile.PostedFile.ContentLength/1024.00; //以时间刻度定义文件名 stringfilename1=DateTime.Now.Ticks.ToString(); myfile.PostedFile.SaveAs(Server.MapPath ("/upload01/"+filename1+filename2)); //将文件名及相关信息存到数据库中 } } }将ASP.NET上传文件到磁盘中,在表中将文件地址或路径记录下来,这样就可以在后面的程序来引用了。
关于ASP.NET上传文件的示例分析问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
文件
图片
页面
代码
图像
数据
分析
控件
数据库
文件名
磁盘
类型
问题
输出
示例
内容
字段
方法
更多
格式
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
5e一直卡在加载服务器
储值卡数据库安全
我的世界像明日之后的服务器
海口渗透靶场网络安全
linux下代理服务器
空调报价软件开发
云服务器安装nat网关
power 数据库
中国电信网络安全的愿景是
广东智慧城市管理平台软件开发
数据库错误2006
初创企业软件开发的资金风险分析
owl读取到图数据库
网络安全之网络协议分析
cdn服务器是什么 知乎
丹东软件开发制作
oracle数据库的名称
平凉管理软件开发
服务器脚本的语言
国家网络安全周的宣传主题
原油数据库
wos数据库入口
阿克苏互联网科技怎么样
excel如何填空格数据库
软件开发设计英文怎么翻译
安徽新余网络技术有限公司
佛山软件开发公司建设方案
目前数据库系统主要采用
前端服务器的组成
网络技术服务的利润率