ASP.NET - FileUpload Web 服务器控件概述(下)

来源:互联网 发布:pic 单片机org指令 编辑:程序博客网 时间:2024/05/21 17:26

 

示例

第一个示例演示如何创建 FileUpload 控件,该控件将文件保存到代码中指定的路径。

<%@ Page Language="C#" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<script runat="server">

 

  protected void UploadButton_Click(object sender, EventArgs e)

  {

    // Specify the path on the server to

    // save the uploaded file to.

    String savePath = @"c:/temp/uploads/";

 

    // Before attempting to perform operations

    // on the file, verify that the FileUpload

    // control contains a file.

    if (FileUpload1.HasFile)

    {

      // Get the name of the file to upload.

      String fileName = FileUpload1.FileName;

 

      // Append the name of the file to upload to the path.

      savePath += fileName;

 

 

      // Call the SaveAs method to save the

      // uploaded file to the specified path.

      // This example does not perform all

      // the necessary error checking.              

      // If a file with the same name

      // already exists in the specified path, 

      // the uploaded file overwrites it.

      FileUpload1.SaveAs(savePath);

 

      // Notify the user of the name of the file

      // was saved under.

      UploadStatusLabel.Text = "Your file was saved as " + fileName;

    }

    else

    {     

      // Notify the user that a file was not uploaded.

      UploadStatusLabel.Text = "You did not specify a file to upload.";

    }

 

  }

</script>

 

<html  >

<head runat="server">

    <title>FileUpload Example</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

       <h4>Select a file to upload:</h4>

 

       <asp:FileUpload id="FileUpload1"                

           runat="server">

       </asp:FileUpload>

 

       <br /><br />

 

       <asp:Button id="UploadButton"

           Text="Upload file"

           OnClick="UploadButton_Click"

           runat="server">

       </asp:Button>   

 

       <hr />

 

       <asp:Label id="UploadStatusLabel"

           runat="server">

       </asp:Label>       

    </div>

    </form>

</body>

</html>

 

      第二个示例演示如何创建 FileUpload 控件,该控件将文件保存到文件系统中针对应用程序的指定目录。

<%@ Page Language="C#" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<script runat="server">

 

    protected void UploadButton_Click(object sender, EventArgs e)

    {

        // Save the uploaded file to an "Uploads" directory

        // that already exists in the file system of the

        // currently executing ASP.NET application. 

        // Creating an "Uploads" directory isolates uploaded

        // files in a separate directory. This helps prevent

        // users from overwriting existing application files by

        // uploading files with names like "Web.config".

        string saveDir = @"/Uploads/";

 

        // Get the physical file system path for the currently

        // executing application.

        string appPath = Request.PhysicalApplicationPath;

 

        // Before attempting to save the file, verify

        // that the FileUpload control contains a file.

        if (FileUpload1.HasFile)

        {

            string savePath = appPath + saveDir +

                Server.HtmlEncode(FileUpload1.FileName);

 

            // Call the SaveAs method to save the

            // uploaded file to the specified path.

            // This example does not perform all

            // the necessary error checking.              

            // If a file with the same name

            // already exists in the specified path, 

            // the uploaded file overwrites it.

            FileUpload1.SaveAs(savePath);

 

            // Notify the user that the file was uploaded successfully.

            UploadStatusLabel.Text = "Your file was uploaded successfully.";

 

        }

        else

        {

            // Notify the user that a file was not uploaded.

            UploadStatusLabel.Text = "You did not specify a file to upload.";  

        }

    }

</script>

 

<html  >

<head runat="server">

    <title>FileUpload Class Example</title>

</head>

<body>

    <h3>FileUpload Class Example: Save To Application Directory</h3>

    <form id="form1" runat="server">

    <div>

       <h4>Select a file to upload:</h4>

 

       <asp:FileUpload id="FileUpload1"                

           runat="server">

       </asp:FileUpload>

 

       <br/><br/>

 

       <asp:Button id="UploadButton"

           Text="Upload file"

           OnClick="UploadButton_Click"

           runat="server">

       </asp:Button>   

 

       <hr />

 

       <asp:Label id="UploadStatusLabel"

           runat="server">

       </asp:Label>          

    </div>

    </form>

</body>

</html>

 

      第三个示例演示如何创建 FileUpload 控件,该控件将文件保存到指定路径并限制可以上载的文件的大小。

<%@ Page Language="C#" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<script runat="server">

 

    protected void UploadButton_Click(object sender, EventArgs e)

    {

        // Specify the path on the server to

        // save the uploaded file to.

        string savePath = @"c:/temp/uploads/";

 

        // Before attempting to save the file, verify

        // that the FileUpload control contains a file.

        if (FileUpload1.HasFile)

        {               

            // Get the size in bytes of the file to upload.

            int fileSize = FileUpload1.PostedFile.ContentLength;

 

            // Allow only files less than 2,100,000 bytes (approximately 2 MB) to be uploaded.

            if (fileSize < 2100000)

            {

 

                // Append the name of the uploaded file to the path.

                savePath += Server.HtmlEncode(FileUpload1.FileName);

 

                // Call the SaveAs method to save the

                // uploaded file to the specified path.

                // This example does not perform all

                // the necessary error checking.              

                // If a file with the same name

                // already exists in the specified path, 

                // the uploaded file overwrites it.

                FileUpload1.SaveAs(savePath);

 

                // Notify the user that the file was uploaded successfully.

                UploadStatusLabel.Text = "Your file was uploaded successfully.";

            }

            else

            {

                // Notify the user why their file was not uploaded.

                UploadStatusLabel.Text = "Your file was not uploaded because " +

                                         "it exceeds the 2 MB size limit.";

            }

        }  

        else

        {

            // Notify the user that a file was not uploaded.

            UploadStatusLabel.Text = "You did not specify a file to upload.";

        }

    }

</script>

 

<html  >

<head runat="server">

    <title>FileUpload Class Example</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

       <h4>Select a file to upload:</h4>

 

       <asp:FileUpload id="FileUpload1"                

           runat="server">

       </asp:FileUpload>

 

       <br/><br/>

 

       <asp:Button id="UploadButton"

           Text="Upload file"

           OnClick="UploadButton_Click"

           runat="server">

       </asp:Button>

 

       <hr />

 

       <asp:Label id="UploadStatusLabel"

           runat="server">

       </asp:Label>

 

    </div>

    </form>

</body>

</html>

 

第四个示例演示如何创建 FileUpload 控件,该控件将文件保存到指定路径并且只允许上载扩展名为 .doc .xls 的文件。

<%@ Page Language="C#" %>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<script runat="server">

 

    protected void UploadBtn_Click(object sender, EventArgs e)

    {

        // Specify the path on the server to

        // save the uploaded file to.

        string savePath = @"c:/temp/uploads";

 

        // Before attempting to save the file, verify

        // that the FileUpload control contains a file.

        if (FileUpload1.HasFile)

        {

            // Get the name of the file to upload.

            string fileName = Server.HtmlEncode(FileUpload1.FileName);

 

            // Get the extension of the uploaded file.

            string extension = System.IO.Path.GetExtension(fileName);

 

            // Allow only files with .doc or .xls extensions

            // to be uploaded.

            if ((extension == ".doc") | (extension == ".xls"))

            {

                // Append the name of the file to upload to the path.

                savePath += fileName;

 

                // Call the SaveAs method to save the

                // uploaded file to the specified path.

                // This example does not perform all

                // the necessary error checking.              

                // If a file with the same name

                // already exists in the specified path, 

                // the uploaded file overwrites it.

                FileUpload1.SaveAs(savePath);

 

                // Notify the user that their file was successfully uploaded.

                UploadStatusLabel.Text = "Your file was uploaded successfully.";

            }

            else

            {

                // Notify the user why their file was not uploaded.

                UploadStatusLabel.Text = "Your file was not uploaded because " +

                                         "it does not have a .doc or .xls extension.";

            }

 

        }

 

    }

 

</script>

 

<html  >

<head runat="server">

    <title>FileUpload Class Example</title>

</head>

<body>

    <form id="form1" runat="server">

    <div>

        <h4>Select a file to upload:</h4>

 

        <asp:FileUpload id="FileUpload1"                

            runat="server">

        </asp:FileUpload>

 

        <br/><br/>

 

        <asp:Button id="UploadBtn"

            Text="Upload file"

            OnClick="UploadBtn_Click"

            runat="server">

        </asp:Button>   

 

        <hr />

 

        <asp:Label id="UploadStatusLabel"

            runat="server">

        </asp:Label>    

    </div>

    </form>

</body>

</html>

 

 

原创粉丝点击