几种文件上传的方法 第一种(务器控件):1.Default.aspx代码如下: 文件上传
2.Default.aspx.cs代码如下:using System;using System.Collections;using System.Configuration;using System.Data;using System.Linq;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.HtmlControls;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Xml.Linq;public partial class Default2 : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { HttpFileCollection files = HttpContext.Current.Request.Files; HttpPostedFile file = files["oneFile"]; string FileName = System.IO.Path.GetFileName(file.FileName); string serverpath = "D:/Admin/Image/" + DateTime.Now.ToString("yyMMddhhmmss") + FileName; string strExping = FileName.Substring(FileName.LastIndexOf(".")); if (strExping.Equals(".jpg")) { file.SaveAs(serverpath); Response.Write("成功"); } else { Response.Write("失败"); } } }}第二种(非服务器控件):1.Default.aspx代码如下:
未命名頁面 2.Default.aspx.cs代码如下: public void FileUpload() { HttpFileCollection files = HttpContext.Current.Request.Files; HttpPostedFile postedFile = files["oneFile"]; if (postedFile.ContentLength > 3072000) Response.Write("文件大小不能大于300K!"); string fileName, fileExtension; fileName = System.IO.Path.GetFileName(postedFile.FileName); string SaveFilePath = ""; if (fileName != "") { //SaveFilePath = "/UploadFile/" + System.DateTime.Now.ToString("yyyymmddhhmmss") + ".rar"; SaveFilePath = System.DateTime.Now.ToString("yyyymmddhhmmss") + ".rar"; fileExtension = System.IO.Path.GetExtension(fileName).ToLower(); if (fileExtension != ".rar") Response.Write("文件格式不正确,你只能上传WinRar压缩包格式文件!"); postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("UploadFile/") + SaveFilePath); //postedFile.SaveAs(Server.MapPath(SaveFilePath)); } }第三种(服务器控件):(Default.aspx代码如下:跟第一种第二种的都差不多,就不写了)1.Default.aspx.cs代码如下: protected void Button1_Click(object sender, EventArgs e) { if (FileUpload1.HasFile) { FileUpload1.SaveAs (Server.MapPath ( "~/Upload/" +FileUpload1.FileName)); Label1.Text="恭喜你,上传成功!"; } else { Label1.Text = "上传失败,或没指定正确的文件!"; } }第四种(服务器控件控制上传文件大小,类型 ):1、Default.aspx代码如下:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
无标题页 2、Default.aspx.cs代码如下: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 Button1_Click(object sender, EventArgs e) { if (FileUpload1.HasFile) { Label2.Text = FileUpload1.FileName; Label3.Text = FileUpload1.PostedFile.ContentLength.ToString() + "字节"; Label4.Text = FileUpload1.PostedFile.FileName; //获得扩展名 string extension = System.IO.Path.GetExtension(FileUpload1.FileName); if (extension == ".rar" || extension == ".doc" || extension == ".xls") { if (FileUpload1.PostedFile.ContentLength < 10000000)//文件小于10M { FileUpload1.SaveAs(Server.MapPath("~/upLoad/" + FileUpload1.FileName)); Label1.Text = "恭喜你,上传成功!"; } else { Label1.Text = "上传失败,不是管理员,上传文件不能大于10M!"; } } else Label1.Text = "上传失败,只能上传扩展名是rar、doc、xls的文件!"; } else { Label1.Text = "上传失败,或没指定正确的文件!"; } }}
4:多个文件一起上传的方法: