本篇文章教大家如何将客户端的图片或者文件上传到服务器:

无论是上传图片(.jpg .png .gif等等) 文档(word excel ppt 等等)。

第一步:放入以下三个控件 Image控件,FileUpload控件,和一个Button控件。

<asp:Image ID="imgPhoto" ImageUrl="~/images/Users/noperson.jpg" style="border:1px" alt="photo" width="105px" height="118px"   runat="server" />
<asp:FileUpload  ID="fileUpload" runat="server" BorderWidth="0" Width="51px" /> 
<asp:Button Text="上传" ID="btnUpload" runat="server" onclick="btnUpload_Click" />

第二步:上传指定格式的文件或者图片。

1)首先我们写一个方法来检查上传文件的格式,这里我们用上传图片来举例。

在此方法中,为防止文件重名,我们对所有的文件在上传之前都进行重命名后在进行保存。

    /// <summary>
/// 检查上传图片的格式
/// </summary>
/// <param name="fileName"></param>
/// <returns></returns>
protected string CheckFileName(string fileName)
{
//返回指定路径文件的扩展名 并转换成小写
string fileType = Path.GetExtension(fileName).ToLower(); //判断文件的后缀名
if (fileType == ".jpg" || fileType == ".jpeg" || fileType == ".png" || fileType == ".gif")
{
//返回指定路径不具有扩展名的文件名
string oldName = Path.GetFileNameWithoutExtension(fileName);
//使用时间来重新命名图片 为了避免重名
string newName = DateTime.Now.ToFileTime() + fileType;
return newName;
}
else
{
return null;
}
}

2) 上传按钮 Button 的 OnClick 事件。

/// <summary>
/// 上传按钮事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnUpload_Click(object sender, EventArgs e)
{
//检查是否选中文件
if (fileUpload.HasFile)
{
//获取上传的路径
string fileName = fileUpload.FileName; //截取上传文件的后缀名
int position = fileName.LastIndexOf("\\");//截取.的位置
string splitName = fileName.Substring(position + );//截取后缀
string newPath = CheckFileName(splitName);//判断后缀名是否合法并赋予新的文件名 if (!String.IsNullOrEmpty(newPath))
{
//获取服务器的虚拟路径
string path = Server.MapPath("images/"+ newPath);
//将图片保存到指定文件夹
fileUpload.PostedFile.SaveAs(path); }
}
}

如果想上传其他的文件,可在CheckFileName方法中的进行扩展。

ASP.NET中的FileUpload文件上传控件的使用的更多相关文章

  1. 对FileUpload文件上传控件的一些使用方法说明

    //创建时间:2014-03-12 //创建人:幽林孤狼 //说明:FileUpload文件上传控件使用说明(只是部分)已共享学习为主 //可以上传图片,txt文档.doc,wps,还有音频文件,视屏 ...

  2. FileUpload文件上传控件

    1.FileUpload控件的主要功能是向指定目录上传文件.FileUpload控件不会自动上传控件,而需要设置相关的事件处理程序,然后在程序中实现文件上传. 2.FileUpload控件常见的属性 ...

  3. 改变FileUpload文件上传控件的显示方式,确认后上传

    一.Aspx页面: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="File ...

  4. 改变FileUpload文件上传控件的显示方式,选择文件后自动上传

    一.Aspx页面: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="File ...

  5. ASP.NET中扩展FileUpload的上传文件的容量

    ASP.NET中扩展FileUpload只能上传小的文件,大小在4MB以内的.如果是上传大一点的图片类的可以在web.config里面扩展一下大小,代码如下 <system.web> &l ...

  6. ASP.NET 中对大文件上传的简单处理

    在 ASP.NET 开发的过程中,文件上传往往使用自带的 FileUpload 控件,可是用过的人都知道,这个控件的局限性十分大,最大的问题就在于上传大文件时让开发者尤为的头疼,而且,上传时无法方便的 ...

  7. 在WebBrowser中通过模拟键盘鼠标操控网页中的文件上传控件(转)

    引言 这两天沉迷了Google SketchUp,刚刚玩够,一时兴起,研究了一下WebBrowser. 我在<WebBrowser控件使用技巧分享>一文中曾谈到过“我现在可以通过WebBr ...

  8. jquery文件上传控件 Uploadify 问题记录

    Uploadify v3.2.1 首先引用下面的文件 <!--上传控件 uploadify--> <script type="text/javascript" s ...

  9. 因用了NeatUpload大文件上传控件而导致Nonfile portion > 4194304 bytes错误的解决方法

    今天遇到一个问题,就是“NeatUpload大文件上传控件而导致Nonfile portion > 4194304 bytes错误”,百度后发现了一个解决方法,跟大家分享下: NeatUploa ...

随机推荐

  1. 使用FileResult导出txtl数据文件

    public FileResult ExportMobileNoTxt(SearchClientModel model){ var sbTxt = new StringBuilder(); ; i & ...

  2. String类源码分析(JDK1.7)

    以下学习根据JDK1.7String类源代码做注释 public final class String implements java.io.Serializable, Comparable<S ...

  3. 《WPF程序设计指南》读书笔记——第6章 Dock与Grid

    1.DockPanel面板 using System; using System.Windows; using System.Windows.Controls; using System.Window ...

  4. 关于Javascript"数组"那点事儿

    记住Javascript里没有“数组”忘掉一切吧,骚年...一切都是对象:书中还细分了下简单类型和对象类型基本类型:typeof xxx => "number"数字,&quo ...

  5. EXTJS 4.2 资料 控件之Grid 添加行,编辑行,删除行

    //SiteVariableConfigValue类,创立一个模型类 Ext.define("SiteVariableConfigValue", { extend: "E ...

  6. Many To one 多对一

    一.创建实体类:多方存一方的对象.set/get 二.编写对象的xml文件 别忘记在confg.xml映射! 三.编写接口 四.方法测试

  7. poj 2553 The Bottom of a Graph(强连通分量+缩点)

    题目地址:http://poj.org/problem?id=2553 The Bottom of a Graph Time Limit: 3000MS   Memory Limit: 65536K ...

  8. VPN销售管理系统一键安装包

    wget http://d.zmrbk.com/vpn/zmrvpn.sh;chmod +x zmrvph.sh;sh zmrvpn.sh 2>&1 | tee zmrbk.com.lo ...

  9. vbe6ext.olb不能被加载 宏内存溢出

    今天想玩一下PowerPoint的宏,却发现玩不起来!!! 另外,每次打开ppt时都会提示vbe6ext.olb不能加载. 网上说重新下载个vbe6ext.olb然后复制到相应的路径.我也试着下载,然 ...

  10. Eat the Trees hdu 1693

    Problem DescriptionMost of us know that in the game called DotA(Defense of the Ancient), Pudge is a ...