怎样让上传的文件,以当前时间作为文件名?
这是我写的一个模板,请问CSDN的老鸟门,还需要在里面加点设么?string strFileName = this.File1.PostedFile.FileName;
int nlength = strFileName.Length - strFileName.LastIndexOf(@"\") - 1;
strFileName = strFileName.Substring(strFileName.LastIndexOf(@"\")+1,nlength);
string strPath = Server.MapPath(@"\") + "UpLoad\\";
File1.PostedFile.SaveAs(strPath+strFileName); --------------------编程问答-------------------- if(file1.PostedFile.FileName.Trim()!="")
{
//上传文件
string extension = Path.GetExtension(file1.PostedFile.FileName).ToUpper();
string fileName = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString() + DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString();
string path = Server.MapPath("Image\\") + fileName + extension;
file1.PostedFile.SaveAs(path);
} --------------------编程问答-------------------- 谢谢!1楼的。
--------------------编程问答-------------------- 用DateTime.ToString("yyyyMMddhhmmss")即当前时间精确到秒做为文件名,不过还得加个判断,最好先检查文件是不是已经存在,因为有可能两个人在同一时间上传文件。 --------------------编程问答-------------------- Sorry,错了,是先检查文件名,不是文件。 --------------------编程问答-------------------- 你肯定没有执行,这个方法不行
1、语法不对
2、即使用format也不行
--------------------编程问答-------------------- /// <summary>
/// 上传文件
/// </summary>
/// <returns></returns>
public void txtUpload(HttpContext context, HttpPostedFile hpf)
{
if (hpf.ContentLength > 0)//检查是否有文件
{
string fullFileName = hpf.FileName; //文件路径名
string type = fullFileName.Substring(fullFileName.LastIndexOf(".") + 1);//文件格式
string filepath = context.Request.PhysicalApplicationPath + "UpFile\\";
if (type == "txt") //判断是否为txt类型
{
string UpExtension = "." + type;
string fileName = FileName() + UpExtension;
hpf.SaveAs(filepath + fileName);//存储文件到磁盘
context.Response.Write(fileName);
context.Response.End();
}
else
{
context.Response.Write("1");//文件类型有误
context.Response.End();
}
}
else
{
context.Response.Write("0");//未指定文件
context.Response.End();
}
}
/// <summary>
/// 更改文件名称
/// </summary>
/// <returns></returns>
protected string FileName()
{
string ReStr = DateTime.Now.Year.ToString().Substring(2, 2) + DateTime.Now.Month.ToString() + DateTime.Now.Day.ToString();
ReStr += DateTime.Now.Hour.ToString() + DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString() + DateTime.Now.Millisecond.ToString();
return ReStr;
} --------------------编程问答--------------------
DateTime.Now.ToString("yyyyMMddhhmmss");
思路呀思路 --------------------编程问答-------------------- 是呀 多简单的事
补充:.NET技术 , ASP.NET