HTML <input type="file">上传文件——结合asp.net的一个文件上传示例
HTML的代码:(关键是要在form里设置enctype="multipart/form-data",这样才能在提交表单时,将文件以二进制流的形式传输到服务器)
一、
<form id="form1" action="test.aspx" method="post" enctype="multipart/form-data">
<div>
<input type="file" name="fl" />
<input type="submit" name="sb" value="submit" />
</div>
</form>
public partial class test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
for (int i = ; i < Request.Files.Count; i++)
{
HttpPostedFile PostedFile = Request.Files[i];
if (PostedFile.ContentLength > )
{
string FileName = PostedFile.FileName;//此处文件名可能上传的是 客户端完成路径 C:\\123.png
string strExPrentFile = FileName.Substring(FileName.LastIndexOf(".") + ); string sFilePath = Server.MapPath("~/") + FileName;// Server.MapPath("~/123." + strExPrentFile);
PostedFile.SaveAs(sFilePath);
}
else
{
//this.LabMessage.Text = "不能上传空文件";
}
}
Response.Write("");
}
}
}
浏览器中查看信息--
响应头信息 原始头信息
Cache-Control
private
Connection
Close
Content-Length
458
Content-Type
text/html; charset=utf-8
Date
Thu, 28 May 2015 03:06:47 GMT
Server
ASP.NET Development Server/10.0.0.0
X-AspNet-Version
4.0.30319
请求头信息 原始头信息
Accept
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Encoding
gzip, deflate
Accept-Language
zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Connection
keep-alive
Cookie
oa_cookiename=%e8%82%96%e5%b7%a5; oa_cookieId=291; èå·¥_log=operation=&TlogGUI=ed1624e4-9e1d-44fb-98f7-1298512a8266
; ASP.NET_SessionId=cfufw4sesznnphj4peooed0d; SLnewses=1; WPTLNG=1
Host
localhost:13771
Referer
http://localhost:13771/AppWeb/test.aspx
User-Agent
Mozilla/5.0 (Windows NT 6.1; rv:38.0) Gecko/20100101 Firefox/38.0
来自上传流的请求头信息
Content-Length
430
Content-Type
multipart/form-data; boundary=---------------------------18319207917180
POST
部分multipart/form-data
fl
PNG
���
IHDR���������
���bKGD�ÿ�ÿ�ÿ ½§��� pHYs��Ä��Ä+���'IDATÁ � °>ó/I6ºð×,·¢¬eEòàXòmY����IEND®B
`
sb
submit
源代码
-----------------------------18319207917180
Content-Disposition: form-data; name="fl"; filename="QQ20150528110621.png"
Content-Type: image/png
PNG
���
IHDR���������
���bKGD�ÿ�ÿ�ÿ ½§��� pHYs��Ä��Ä+���'IDATÁ � °>ó/I6ºð×,·¢¬eEòàXòmY����IEND®B
`
-----------------------------18319207917180
Content-Disposition: form-data; name="sb"
submit
-----------------------------18319207917180--
二、
<form id="form1" runat="server" method="post" enctype="multipart/form-data">
<div>
<input type="file" />
<asp:Button ID="btnUpload" runat="server" Text="开始上传" onclick="btnUpload_Click" />
</div>
</form>
protected void btnUpload_Click(object sender, EventArgs e)
{
//int intCount = RequestClass.GetFormInt("hdcount", -1);
HttpFileCollection Files = HttpContext.Current.Request.Files;
for (int i = ; i < Files.Count; i++)
{
HttpPostedFile PostedFile = Files[i];
if (PostedFile.ContentLength > )
{
string FileName = PostedFile.FileName;
string strExPrentFile = FileName.Substring(FileName.LastIndexOf(".") + ); string sFilePath = "/uploadfile/hotel/" + StringClass.makeFileName24() + i + strExPrentFile;
PostedFile.SaveAs(Server.MapPath(sFilePath));
}
else
{
//this.LabMessage.Text = "不能上传空文件";
}
}
}
HTML <input type="file">上传文件——结合asp.net的一个文件上传示例的更多相关文章
- input[type='file']样式美化及实现图片预览
前言 上传图片是常见的需求,多使用input标签.本文主要介绍 input标签的样式美化 和 实现图片预览. 用到的知识点有: 1.input标签的使用 2.filelist对象 和 file对象 3 ...
- input type=file 选择图片并且实现预览效果的实例
为大家带来一篇input type=file 选择图片并且实现预览效果的实例. 通过<input />标签,给它指定type类型为file,可提供文件上传: accept:可选择上传类型, ...
- input type=file 选择图片并且实现预览效果
通过<input />标签,给它指定type类型为file,可提供文件上传: accept:可选择上传类型,如:只要传图片,且不限制图片格式,为image/*: multiple:规定是否 ...
- input type="file"使用
问题: 在实际开发过程中,会遇到上传文件的一些需求.但是使用原生的<input type="file" />在使用中存在一些问题 在未上传文件时,显示"no ...
- 原来样式改变不了(input type="file")
label { background-color: #979fa8; color: #fff; display: inline-block; padding: .8rem 4rem; cursor: ...
- html中,文件上传时使用的<input type="file">的样式自定义
Web页面中,在需要上传文件时基本都会用到<input type="file">元素,它的默认样式: chrome下: IE下: 不管是上面哪种,样式都比较简单,和很多 ...
- 上传文件 隐藏input type="file",用text显示
<div> <span>上传文件:</span> <input type="file" id="upload_file" ...
- javascript input type=file 文件上传
在JS中,input type=file 是常用的文件上传API,但感觉W3C说的不是很清楚,同时网上的资料也比较乱. 由于做微信开发,所以网页打算尽量少用第三方库或者插件,以加快网页的加载速度.因为 ...
- 用jQuery重置用于文件上传的input (type="file")
页面中有如下标签: <input type="file" id="upload"/> 此标签本用于文件上传,现在有需要将其值重置为空.于是想当然地写 ...
随机推荐
- java util 下的concurrent包
------------------------------------------java util 下的concurrent包--------并发包--------------------.jav ...
- 在多线程并发请求Api的场景中,如何控制每个线程的qps
想了一段时间,给出代码Demo #include <stdio.h> #include <stdlib.h> #include <pthread.h> typede ...
- C++类继承关系视图的自动生成
原创文章,转载请注明出处. 工欲善其事,必先利其器.阅读大型C++工程项目,如果有一些自动化的分析工具支持,学习的效率将大大提升.在前文中介绍了Source Insight在Linux下的安装方法,本 ...
- Qt 开启鼠标跟踪,自动激活mouseMoveEvent的问题
最近在Qt上实现一个功能,鼠标在图片上移动,触发mouseMoveEvent事件,进而生成一个小的半透明窗口,放大显示以鼠标为中心的一个区域的图像并随鼠标移动.但是,必须鼠标摁下,才触发mouseMo ...
- 如何在ASP.NET Core中使用Redis
注:本文提到的代码示例下载地址> https://code.msdn.microsoft.com/How-to-use-Redis-in-ASPNET-0d826418 Redis是一个开源的内 ...
- spring 拦截器
1.mvc.xml <!-- 自定义拦截链配置 --> <mvc:interceptors> <mvc:interceptor> <mvc:mapping p ...
- js浮点乘除法运算不精确bug
//除法函数,用来得到精确的除法结果 //说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显.这个函数返回较为 精确的除法结果. //调用:accDiv(arg1,arg2 ...
- redis-内存异常 Redis is configured to save RDB snapshots解决
连接reids获取数据时提示 Redis is configured to save RDB snapshots, but is currently not able to persist on di ...
- KMP算法实现
链接:http://blog.csdn.net/joylnwang/article/details/6778316 KMP算法是一种很经典的字符串匹配算法,链接中的讲解已经是很明确得了,自己按照其讲解 ...
- JavaScript中---作用域
作用域: 变量还有函数作用的范围. 浏览器的内核主要有两大功能,一个是渲染页面,另一个就是我们的JavaScript的解释器了. 我们主要来说说JavaScript解释器,在解析时是怎么样的工作原理. ...