1.html代码:

<body>
<form id="form1" runat="server">
<div>
<asp:FileUpload runat="server" ID="UpLoadFile"/>
<asp:Button runat="server" ID="btnUpLoad" OnClick="btnUpLoad_Click" Text="上传"/>
</div>
</form>
</body>

html代码

2.后台代码:

public int fileMaxContentLength = ;//最大文件大小,单位M
public int imgMaxWidth = ;//图片最大宽度,单位px
public int imgMaxHeight = ;//图片最大高度,单位px
public string fileTypes = ".jpg.png.gif.rar.zip";//文件格式 protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) { }
} /// <summary>
/// 上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnUpLoad_Click(object sender, EventArgs e)
{
if (!this.UpLoadFile.HasFile)
{
//code
return;
}
//HttpPostedFile类提供对客户端已上载的单独文件的访问
HttpPostedFile hpf = this.UpLoadFile.PostedFile;
//文件名
string fileName = Path.GetFileName(hpf.FileName);
//文件扩展名
string extension = System.IO.Path.GetExtension(fileName);
//文件大小,单位字节
int fileContentLength = hpf.ContentLength;
//上传路径
string filePath = Server.MapPath("/Files/"); #region 如果要上传图片,以此判段图片的宽高
//创建数据流
//Stream fileStream = hpf.InputStream;
//通过数据流创建Image对象
//System.Drawing.Image img = System.Drawing.Image.FromStream(hpf.InputStream);
//获取图片的宽度
//int imgWidth = img.Width;
//获取图片的高度
//int imgHeight = img.Height;
#endregion //判断文件格式
if (!fileTypes.Contains(extension))
{
//code
return;
}
//判断文件大小
if (fileContentLength * 1.0 / ( * ) > fileMaxContentLength)
{
//code
return;
} if (!Directory.Exists(filePath))
{
//如果没有此文件夹,则新建
Directory.CreateDirectory(filePath);
}
//保存
hpf.SaveAs(filePath + fileName);
}

cs代码

本人已运行测试,不论代码的质量,可以正常上传文件和图片。

c#上传文件(一)使用 .net 控件上传文件的更多相关文章

  1. AutoIt上传非input控件方式的文件脚本

    AutoIt目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Windows GUI(图形用户界面)中进行自动化操作.它利用模拟键盘按键,鼠标移动和窗口/控件的组合来实现自动 ...

  2. FileUpload的控件上传excel

    在一个使用FileUpload的控件上传excel,读取excel的数据 因为上传的路径一直被限定在C:\Program\IIS\Express 一直限制这个文件下, 想要解决这个问题. 在谷歌浏览器 ...

  3. C#使用FileSystemWatcher控件实现的文件监控功能示例

    本文实例讲述了C#使用FileSystemWatcher控件实现的文件监控功能.分享给大家供大家参考,具体如下: FileSystemWatcher 可以使用FileSystemWatcher组件监视 ...

  4. [MFC] MFC 打开HTML资源(用ID版,也可加载到自己的web控件上)

    @ ^ @:如果是加载到web控件上,就把注释掉的解除注释(改为web控件点后面的函数),把下一句注释 BOOL Button::LoadFromResource(UINT nRes){//打开网页加 ...

  5. Cocos2dx 把 glview 渲染到 Qt 控件上(Mac 环境)

    本文原链接:http://www.cnblogs.com/zouzf/p/4423256.html 环境:Mac 10.9.2   Xcode5.1.1  Qt5.3  cocos2dx-2.2.4 ...

  6. Duilib 鼠标在某控件例如按钮上悬停后,对目标控件操作

    其实对WM_MOUSEHOVER消息的处理,因为WindowImplBase基类中对此消息未处理,所以在自己的窗口类中实现: .h文件中加入 LRESULT OnMouseHover( UINT uM ...

  7. 对话框上动态控件的创建、在Picture Control控件上显示图片

    1  MFC对话框之上的动态控件的创建 对话框上的控件是MFC类的一个具体对象. 当在对话框之上使用静态控件时,可以根据类向导来为每个控件添加消息.响应函数以及变量. 当需要在对话框中动态的创建某个控 ...

  8. 支持各种控件上/下拉刷新的android-pulltorefresh

    android- pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新,如ListView.ViewPager.WevView. ExpandableListView.Grid ...

  9. WPF如何将数据库中的二进制图片数据显示在Image控件上

    首先在xaml文件里定义一个Image控件,取名为img MemoryStream stream = new MemoryStream(获得的数据库对象): BitMapImage bmp = new ...

  10. 文件监控只FileSystemWatcher控件

    FileSYstemWatcher控件是用来监控一个文件系统或监控文件变化.该控件会通知文件创建.修改.删除的消息,分别通过Created事件.Changed事件和Deleted事件来处理对应的操作 ...

随机推荐

  1. Codeforces Round #207 (Div. 2) A. Group of Students

    #include <iostream> #include <vector> using namespace std; int main(){ ; cin >> m ...

  2. FFT模板

    我终于下定决心学习FFT了. orzCHX,得出模板: #include<cstdio> #include<cctype> #include<queue> #inc ...

  3. CustomValidator验证的使用方法

    <asp:TextBox ID="txtNum" runat="server" Width="400px" ></asp: ...

  4. for循环计算游戏通关分数

    一个游戏1到20关是成绩是自身关卡数的成绩,21-30每关10分,31-40每关20分,41-49每关30分,50关100分.输入一个关数求成绩 代码如下: <!DOCTYPE html PUB ...

  5. SQL中的charindex()方法

    CHARINDEX函数返回字符或者字符串在另一个字符串中的起始位置.CHARINDEX函数调用方法如下: CHARINDEX ( expression1 , expression2 [ , start ...

  6. serv-u and hway3.0

    一个非常好用的su提权脚本,在支持php的环境下,目录可读可写,基本秒杀. <? //HWay && Serv-U by r00t //r00t@007team.net //ww ...

  7. sqlmap我常用到的几个参数

    -r "抓的包存放的文件路径.txt"    一般方便带cookie与session类型 --dbms Oracle/Mysql     指定数据库类型 指定变量注入点变量:在变量 ...

  8. Html - 横版TH+TD

    通常可位于表格上方的搜索区域html <div class="panel panel-default"> <div class="panel-body& ...

  9. io资料

    jitsi red5 apache meeting2 openmeeting2 openfire http://www.onlycoder.net/ 在视频会议领域,有许多可以值得参考的开源项目,这些 ...

  10. HDU 1698 Just a Hook(线段树区间替换)

    Just a Hook Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tota ...