• asp.net,C#,html控件的File控件实现多文件上传简单实例,vs2010


    asp.net多文件上传使用html控件的File控件,在form中就需要加入【 enctype="multipart/form-data"】。

    up3.aspx文件代码

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="up3.aspx.cs" Inherits="up3" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script language="javascript" type="text/javascript">
            function addFile() {
    
                var odiv = document.getElementById("MyFile");
    
                var str = "<div><input name='File' type='file'  /></div>";
    
                odiv.insertAdjacentHTML("beforeEnd", str);
    
            }
            function resetFile() {
    
                var odiv = document.getElementById("MyFile");
    
                odiv.innerHTML = "<div><input name='File' type='file' /></div>";
    
            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server" enctype="multipart/form-data">
        <input type="button" value="增加" onclick="addFile()" />
        <input type="button" value="重置" onclick="resetFile()" />
        <div id="MyFile">
            <div><input name="File" type="file" /></div>
        </div>
        <asp:Button runat="server" Text="上传" ID="Button1" OnClick="Button1_Click" BorderColor="Desktop"
            BorderWidth="1px" Height="20px" Width="60px"></asp:Button>
        <div>
            <asp:Label ID="Label1" runat="server"></asp:Label>
        </div>
        </form>
    </body>
    </html>

    up3.aspx.cs文件代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    using System.IO;
    
    public partial class up3 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    
        }
    
        protected void Button1_Click(object sender, EventArgs e)
        {
            string upPath = "/up/";  //上传文件路径
            int upLength = 5;        //上传文件大小
            string upFileExtName = "|bmp|jpg|jpeg|png|gif|";
    
    
            HttpFileCollection _files = System.Web.HttpContext.Current.Request.Files;
    
            int flag = _files.Count;
            int flagN = 0;
            int flagE = 0;
            int flagEE = 0;
            string flagEEstr = "";
    
            for (int i = 0; i < _files.Count; i++)
            {
                string name = _files[i].FileName;
    
                FileInfo fi = new FileInfo(name);
    
                string oldfilename = fi.Name;
                string scExtension = fi.Extension.ToLower();
    
                string fileName = DateTime.Now.ToString("yyyyMMddhhmmssfff") + fi.Extension; // 文件名称,当前时间(yyyyMMddhhmmssfff)
                string webFilePath = Server.MapPath(upPath) + fileName;        // 服务器端文件路径
    
                if (upFileExtName.IndexOf(scExtension.Replace(".", "")) == -1)
                {
                    flagEE = flagEE + 1;
                    flagEEstr = flagEEstr + "" + (i + 1) + "个文件,文件名[" + oldfilename + "],文件类型不符合!";
                    continue;
                }
    
                if ((fi.Length / (1024 * 1024)) > upLength)
                {
                    flagEE = flagEE + 1;
                    flagEEstr = flagEEstr + "" + (i + 1) + "个文件,文件名[" + oldfilename + "],超出" + upLength + "M大小限制!";
                    continue;
                }
    
                try
                {
                    _files[i].SaveAs(webFilePath);
                }
                catch (Exception ex)
                {
                    flagEE = flagEE + 1;
                    flagEEstr = flagEEstr + "" + (i + 1) + "个文件,上传异常【"+ex.Message+"";
                   
                }
    
            }
    
            Label1.Text = "总文件【" + flag + "】,上传成功文件【" + flagN + "】,异常文件【" + (flagE + flagEE) + "】【" + flagEEstr + "";
        }
    }
  • 相关阅读:
    Java学习第一课:搭建Eclipse+MyEclipse+Tomcat
    XFire 与 JAXWS的区别 GlassFish是Java EE 5的开源实现其中包括JAXWS
    在MyEclipse6.5上开发JAXWS web服务
    adobe acrobat professional8 .0 激活方法实施过程 记录
    MySQL MYSQL_ROW 返回的字段若是 float 如何在 C++程序中 把 字段值赋给 一个 float变量
    Arrays.sort 不区分大小写 排序
    Arrays.sort 不区分字母大小写 排序
    Applet与Servlet通讯的四种方法及其比较
    Arrays.sort 不区分大小写字母 Comparable
    利用 Arrays.sort 字符串 进行排序 完全按字符 排序 忽略字符大小写
  • 原文地址:https://www.cnblogs.com/weekzero/p/2914098.html
Copyright © 2020-2023  润新知