ASP.NET 中上传文件-应用

作者:vkvi 来源:ITPOW(原创) 日期:2007-6-9

在 ASP 中上传文件是一项较为复杂的任务,需要先分析上传文件的数据格式,再根据此格式提取上传的文件。

在 ASP.NET 中却只需要一句。

  • PostedFile.ContentLength 属性(int),文件大小
  • PostedFile.ContentType 属性(string),文件类型
  • PostedFile.FileName 属性(string),上传文件名
  • PostedFile.SaveAs 方法(无返回值,参数为目标文件名),保存文件

示例

<%@ Page Language="C#" %>
<script runat="server">
    void Upload(object sender, EventArgs e)
    {
        if (atch.PostedFile.ContentLength > 0)
        {
            //上传的文件中有内容
            lbContentLength.Text = atch.PostedFile.ContentLength.ToString(); //由于 ContentLength 是 int 类型,为了类型匹配,这里要使用 ToString()
            lbContentType.Text = atch.PostedFile.ContentType;
            lbFileName.Text = atch.PostedFile.FileName;
            atch.PostedFile.SaveAs(Server.MapPath("foo.jpg"));
        }
        else
        {
            lbContentLength.Text = "";
            lbContentType.Text = "";
            lbFileName.Text = "";
        }
    }
</script>
<!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">
    <title>ASP.NET 中上传文件</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    请选择一个 JPG 图片:<asp:FileUpload ID="atch" runat="server" />
    <asp:Button ID="btnUpload" runat="server" Text="上传" OnClick="Upload" />
    </div>
    <div>文件大小:<asp:Label ID="lbContentLength" runat="server"></asp:Label></div>
    <div>文件类型:<asp:Label ID="lbContentType" runat="server"></asp:Label></div>
    <div>上传文件名:<asp:Label ID="lbFileName" runat="server"></asp:Label></div>
    </form>
</body>
</html>

相关阅读

相关文章