asp.net上传文件与创建文件夹实例
2008-11-09 22:54
609 查看
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;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
/// <summary>
/// 上传文件到指定的文件夹
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSure_Click(object sender, EventArgs e)
{
//string phName = this.txtName.Text;
//string phType = this.ddlType.SelectedValue;
if (this.myFile.PostedFile != null) //myFile是上传控件的名称
{
string photoName1 = myFile.PostedFile.FileName; //获取初始文件名
int i = photoName1.LastIndexOf("."); //取得文件名中最后一个"."的索引
string newext = photoName1.Substring(i); //获取文件扩展名
if (newext != ".gif" && newext != ".jpg" && newext != ".jpeg" && newext != ".bmp" && newext != ".png")
{
Response.Write("文件格式不正确!");
Response.End();
}
DateTime now = DateTime.Now; //获取系统时间
string classid = DateTime.Now.Year.ToString();
//根据年份判断在该路径下是否存在以当年年份文件夹 否则将建立以该年份的文件夹
if (!Directory.Exists(HttpContext.Current.Server.MapPath("photos/") + "//" + classid)) //HttpContext.Current.Server.MapPath(相对路径):把相对路径转为服务器上的绝对路径。File.Exists(绝对路径):检查是否存在绝对路径指向的文件或目录。
{
System.IO.Directory.CreateDirectory(@HttpContext.Current.Server.MapPath("photos/") + "//" + classid); //System.IO.Directory.CreateDirectory(文件夹绝对路径):建立绝对路径文件夹。
}
string photoName2 = now.Millisecond.ToString() + "_" + myFile.PostedFile.ContentLength.ToString() + newext; //重新为文件命名,时间毫秒部分+文件大小+扩展名
myFile.PostedFile.SaveAs(Server.MapPath("photos//"+classid+"//" + photoName2)); // 保存文件到路径,用Server.MapPath()取当前文件的绝对目录.在asp.net里"/"必须用"//"代替
}
}
/// <summary>
/// 这是一个button控件指定在某目录下创建文件夹的示例,可供参考按照年月或不同的人上传在不同的文件夹里
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCreateBag_Click(object sender, EventArgs e)
{
string classid = DateTime.Now.Year.ToString();
if (!Directory.Exists(HttpContext.Current.Server.MapPath("photos/") + "//" + classid)) //HttpContext.Current.Server.MapPath(相对路径):把相对路径转为服务器上的绝对路径。File.Exists(绝对路径):检查是否存在绝对路径指向的文件或目录。
{
System.IO.Directory.CreateDirectory(@HttpContext.Current.Server.MapPath("photos/") + "//" + classid); //System.IO.Directory.CreateDirectory(文件夹绝对路径):建立绝对路径文件夹。
}
else
{
Response.Write("<script language=javascript>alert('文件夹已经存在')</script>");
}
}
}
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;
using System.IO;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
/// <summary>
/// 上传文件到指定的文件夹
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSure_Click(object sender, EventArgs e)
{
//string phName = this.txtName.Text;
//string phType = this.ddlType.SelectedValue;
if (this.myFile.PostedFile != null) //myFile是上传控件的名称
{
string photoName1 = myFile.PostedFile.FileName; //获取初始文件名
int i = photoName1.LastIndexOf("."); //取得文件名中最后一个"."的索引
string newext = photoName1.Substring(i); //获取文件扩展名
if (newext != ".gif" && newext != ".jpg" && newext != ".jpeg" && newext != ".bmp" && newext != ".png")
{
Response.Write("文件格式不正确!");
Response.End();
}
DateTime now = DateTime.Now; //获取系统时间
string classid = DateTime.Now.Year.ToString();
//根据年份判断在该路径下是否存在以当年年份文件夹 否则将建立以该年份的文件夹
if (!Directory.Exists(HttpContext.Current.Server.MapPath("photos/") + "//" + classid)) //HttpContext.Current.Server.MapPath(相对路径):把相对路径转为服务器上的绝对路径。File.Exists(绝对路径):检查是否存在绝对路径指向的文件或目录。
{
System.IO.Directory.CreateDirectory(@HttpContext.Current.Server.MapPath("photos/") + "//" + classid); //System.IO.Directory.CreateDirectory(文件夹绝对路径):建立绝对路径文件夹。
}
string photoName2 = now.Millisecond.ToString() + "_" + myFile.PostedFile.ContentLength.ToString() + newext; //重新为文件命名,时间毫秒部分+文件大小+扩展名
myFile.PostedFile.SaveAs(Server.MapPath("photos//"+classid+"//" + photoName2)); // 保存文件到路径,用Server.MapPath()取当前文件的绝对目录.在asp.net里"/"必须用"//"代替
}
}
/// <summary>
/// 这是一个button控件指定在某目录下创建文件夹的示例,可供参考按照年月或不同的人上传在不同的文件夹里
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnCreateBag_Click(object sender, EventArgs e)
{
string classid = DateTime.Now.Year.ToString();
if (!Directory.Exists(HttpContext.Current.Server.MapPath("photos/") + "//" + classid)) //HttpContext.Current.Server.MapPath(相对路径):把相对路径转为服务器上的绝对路径。File.Exists(绝对路径):检查是否存在绝对路径指向的文件或目录。
{
System.IO.Directory.CreateDirectory(@HttpContext.Current.Server.MapPath("photos/") + "//" + classid); //System.IO.Directory.CreateDirectory(文件夹绝对路径):建立绝对路径文件夹。
}
else
{
Response.Write("<script language=javascript>alert('文件夹已经存在')</script>");
}
}
}
相关文章推荐
- asp.net上传文件并创建文件夹和删除文件
- asp.net ftp 上传,下载,删除文件,创建文件夹,删除文夹,重命名类
- net上传文件并创建文件夹
- asp.net html控件的File控件实现多文件上传实例分享
- Asp.net文件上传 重命名 以及自动创建上传目录
- asp.net 文件上传实例汇总
- Asp.Net的FileUpload类实现上传文件实例
- ASP.NET多文件上传实例
- Asp.net实现MVC处理文件的上传下载功能实例教程
- ASP.NET多文件上传实例
- asp.net文件上传简单实例
- asp.net html控件的File控件实现多文件上传实例分享
- asp.net,C#,FileUpload控件文件上传简单实例,vs2010
- ASP.NET Core文件上传与下载实例(多种上传方式)
- ASP.NET上传文件的实例
- asp.NET上传文件到指定文件夹,ACCESS数据库,SQL数据库代码
- asp.net下CKFinder IE浏览器中上传图片文件时提示“无效文件名或文件夹名称”的解决方法(原创文章)
- asp.net web大文件上传带进度条实例代码
- asp.net 利用 iframe上传文件实例
- ASP.NET真的进度条,上传文件和文件夹