asp.net利用FileUpload控件上传文件
自引入 Microsoft ASP.NET 版本 1.0 之日起,就存在生成 Web 应用程序的内置方法,这些方法能够将文件上载到宿主服务器。这是通过使用 File Field HTML 服务器控件实现的。我以前写过一篇关于如何在 ASP.NET 应用程序中有效使用该控件的 MSDN 文章。本文将再次介绍文件上载过程,但不是使用 File Field 控件,我将向您介绍如何有效使用 ASP.NET 2.0 提供的新 FileUpload 服务器控件。
下面是一个网上找到的测试代码
<%@ Page Language=”C#” AutoEventWireup=”true” CodeFile=”Default.aspx.cs” Inherits=”_Default” %>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”https://www.w3.org/1999/xhtml”>
<head runat=”server”>
<title>示例8-3</title>
<link id=”InstanceStyle” href=”StyleSheet.css” type=”text/css” rel=”stylesheet” />
</head>
<body>
<form id=”Form1″ runat=”server”>
<div>
<fieldset style=”width: 290px”>
<legend class=”mainTitle”>FileUpload控件典型应用</legend>
<br />
<asp:FileUpload ID=”FileUpload1″ runat=”server” />
<asp:Button ID=”BtnUpload” runat=”server” Text=”上传” OnClick=”BtnUpload_Click” />
<hr />
<asp:Label ID=”LabMessage1″ runat=”server” ForeColor=”red” /><br />
<asp:Label ID=”LabMessage2″ runat=”server” />
</fieldset>
</div>
</form>
</body>
</html>
自定义命名为.aspx文件
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void BtnUpload_Click(object sender, EventArgs e)
{
bool fileOK = false;
string path = Server.MapPath(”~/Temp/”);
if (FileUpload1.HasFile)
{
String fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions = { “.gif”, “.png”, “.bmp”, “.jpg” };
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
}
}
if (fileOK)
{
try
{
FileUpload1.SaveAs(path + FileUpload1.FileName);
LabMessage1.Text = “文件上传成功.”;
LabMessage2.Text = “<b>原文件路径:</b>” + FileUpload1.PostedFile.FileName + “<br />” +
“<b>文件大小:</b>” + FileUpload1.PostedFile.ContentLength + “字节<br />” +
“<b>文件类型:</b>” + FileUpload1.PostedFile.ContentType + “<br />”;
}
catch (Exception ex)
{
LabMessage1.Text = “文件上传不成功.”;
}
}
else
{
LabMessage1.Text = “只能够上传图片文件.”;
}
}
}
命名为Default.aspx.cs
需要注意的这里string path = Server.MapPath(”~/Temp/”); 定义你的文件上传目录,这里设置到了网站根目录下的temp目录。文件上传大小限制
默认情况下,上传文件大小限制为 4096 KB (4 MB)
最后更新:2017-01-04 22:34:58