首页 > 代码库 > C# asp.net实现文件上传

C# asp.net实现文件上传

前端代码:

使用visual studio开发实现文件上传

前端页面代码:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="scientist.WebForm1" %>

<!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">
<script type="text/javascript">    
    var baseText = null; 
    function upOpen() {
        var xzOpen = document.getElementById("xzOpen");
        xzOpen.style.top = "200px"; //窗口距离浏览器内容区最上方的偏移值 
        xzOpen.style.left = "500px"; //窗口距离浏览器内容区最左边的偏移值 
        xzOpen.style.width = "500px"; //窗口的宽度 
        xzOpen.style.height = "300px"; //窗口的高度
        if (baseText == null) baseText = xzOpen.innerHTML;
        xzOpen.innerHTML = baseText + "<div id=\"statusbar\"><button onclick=\"hidePopup(); \">Close window<button></div>"
        var sbar = document.getElementById("statusbar"); 
        sbar.style.marginTop = (parseInt(100)-20) + "px";
        xzOpen.style.visibility = "visible"; 
    document.getElementById("xzOpen").click();
    }
</script>
 <title>上传文档</title>
<style type="text/css"> 
*{ margin:0; padding:0;} 
.exDiv{}
.boxmain{float:left;margin-right:0px;width:100%;} 
.xzOpen{position: absolute; visibility: hidden; overflow: hidden; border:2px solid #CCC; background-color:	#FFCBB3; border:2px solid #333; padding:5px; }
.F1{float:left;margin-top:5px;}
.B1{float:right;margin-top:80px;}
.left{position:absolute;left:0; background:#BBFFBB;height:300px;width:20%} 
.main{margin-right:200px;background:#79FF79; height:300px;;width:100%;margin-left:auto;} 
.up{margin-right:1px;background:#984B4B; height:30px;width:64px;
margin-left:0px;
    }
</style> 
</head>
<body>
    <form id="form1" runat="server">
    <div class="exDiv" style="width:100%; height:80px; margin:0 auto; border:solid 1px #999999;background-color:#95CACA">
    <font >上传文件</font>
    </div>
    <div class="xzOpen" id="xzOpen" >
        <div class="F1" id="F1">
            <asp:FileUpload ID="FileUpload1" runat="server" Width="224px"  />
         </div>
         <div class="B1" id="B1">
            <asp:Button ID="Button1" runat="server" Text="提交" onclick="Button1_Click"  style="margin:0 auto" Width="107px" />
         </div>
    </div>
    </form>
    <div class="boxmain"> 
        <div class="main">main</div> 
    </div> 
    <div class="left"><input type="file" id="xzFile" style="display:none"/> 
         <button type="button" class="up" onclick="upOpen()">选择文件</button>
    </div> 
</body>
</html>


后台C#部分:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace scientist
{
    public partial class WebForm1 : System.Web.UI.Page
    {

        protected void Page_Load(object sender, EventArgs e)
        {

        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            HttpPostedFile postedFile = this.FileUpload1.PostedFile; //获取到要上传的文件
            String fileName = "";//文件名
            String filePath = "filesNameTest/";//文件保存路径
            fileName = System.IO.Path.GetFileName(postedFile.FileName);//获取文件名称
            if (System.IO.Directory.Exists(Server.MapPath(filePath)) == false)//判断文件夹是否存在
            {
                System.IO.Directory.CreateDirectory(Server.MapPath(filePath));//如果不存在就创建file文件夹
            }
            if (System.IO.File.Exists(Server.MapPath(filePath+fileName)) == true)//判断同名文件是否存在
            {
                Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert(‘同名文件已存在‘)", true);//弹窗提示文件已存在
            }
            else//文件不存在则保存文件
            {
                if (fileName != "")//判断前端是否有文件传过来
                {
                    String fileSuffix = System.IO.Path.GetExtension(fileName); //获取上传文件的扩展名
                    postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath(filePath) + fileName);//保存文件至根目录下的files文件夹里
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert(‘已经保存成功‘)", true);//弹窗提示保存成功
                }
                else
                {
                    Page.ClientScript.RegisterStartupScript(this.GetType(), "message", "alert(‘请选择文件‘)", true);//弹窗提示未选择文件
                }
            }
        }
    }
}


本文出自 “技术的秘密-刘聪聪的创作” 博客,请务必保留此出处http://liucongcong.blog.51cto.com/11527480/1929800

C# asp.net实现文件上传