它是一个输入控制器,用于将文件上传到服务器。它在窗体上创建一个浏览按钮,该按钮弹出一个窗口以从本地计算机中选择文件。
要实现FileUpload,我们可以将其从Visual Studio的工具箱中拖动。
< asp:FileUpload ID="FileUpload1" runat="server"/>
属性 | 描述 |
---|---|
AccessKey | 用于设置控件的键盘快捷键。 |
TabIndex | 控件的制表符顺序。 |
BackColor | 用于设置控件的背景色。 |
BorderColor | 用于设置控件的边框颜色。 |
BorderWidth | 用于设置控件边框的宽度。 |
Font | 用于设置控制文本的字体。 |
ForeColor | 用于设置控件文本的颜色。 |
Text | 它用于设置要为控件显示的文本。 |
ToolTip | 当鼠标悬停在控件上时, 它将显示文本。 |
Visible | 在窗体上设置控件的可见性。 |
Height | 用于设置控件的高度。 |
Width | 用于设置控件的宽度。 |
AllowMultiple | 通过将true或false设置为允许上传多个文件。 |
示例:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebControls.aspx.cs"
Inherits="WebFormsControlls.WebControls" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<p>Browse to Upload File</p>
<asp:FileUpload ID="FileUpload1" runat="server" /> //上传文件控件
</div>
<p>
<asp:Button ID="Button1" runat="server" Text="Upload File" OnClick="Button1_Click" /> //点击上传文件
</p>
</form>
<p>
<asp:Label runat="server" ID="FileUploadStatus"></asp:Label> //显示文件上传状态
</p>
</body>
</html>
后台:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebFormsControlls
{
public partial class WebControls : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlInputFile File1;
protected System.Web.UI.HtmlControls.HtmlInputButton Submit1;
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if ((FileUpload1.PostedFile != null) && (FileUpload1.PostedFile.ContentLength > 0))
{
//获取文件名
string fn = System.IO.Path.GetFileName(FileUpload1.PostedFile.FileName);
//获取文件存储地址 upload为文件夹名
string SaveLocation = Server.MapPath("upload") + "\\" + fn;
try
{
FileUpload1.PostedFile.SaveAs(SaveLocation);
FileUploadStatus.Text = "请选择要上传的文件"; //在Label中输出文件上传状态,
}
catch (Exception ex)
{
//输出报错信息
FileUploadStatus.Text = "Error: " + ex.Message;
}
}
else
{
//上传成功提示
FileUploadStatus.Text = "文件上传成功";
}
}
}
}
在项目中创建一个目录来存储上载的文件