1. 程式人生 > >asp.net檔案上傳問題

asp.net檔案上傳問題

最近在做一個網站,要求要實現本地上傳並動態顯示。

目前學生黨,在下確實知識不夠深,還得繼續努力。

這裡只說一下上傳到本地的一個簡單方法,最近看了很多有關上傳的內容,像WebUpload外掛,但個人覺得比較麻煩,我只要做到上傳的功能就行了。

asp工具箱有個FileUpLoad控制元件,然後還有button控制元件,這兩個是核心。

貼一下前端程式碼

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>檔案上傳</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
                <asp:Label ID="Label1" runat="server" Text="選擇您要上傳的檔案"></asp:Label>
                <asp:FileUpload ID="FileUpload1" runat="server" />
                <asp:Button ID="Button1" runat="server" Text="上傳" OnClick="Button1_Click" />
            
    </form>
</body>
</html>


下面貼上後端程式碼

    
public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {


        }


        protected void Button1_Click(object sender, EventArgs e)
        {
            //獲取將要上傳檔案的絕對路徑  
            string FullFileName = this.FileUpload1.PostedFile.FileName;
            //通過字串擷取函式將上傳檔案的檔名提出來  
            string fileName = FullFileName.Substring(FullFileName.LastIndexOf("\\") + 1);
            //使用控制元件的方法儲存檔案到指定的資料夾中  
            this.FileUpload1.PostedFile.SaveAs(Server.MapPath("Upfile") + "\\" + fileName);  
        }
    }

需要注意的是Upfile,這個資料夾是我自己在專案裡新建的一個資料夾,用來儲存上傳檔案的。在之前我一直沒弄懂這個Server.MapPath("")括號裡的路徑應該怎麼寫。