使用文件夹中的唯一名称保存上载的文件

时间:2012-09-17 10:07:35

标签: c# asp.net file-upload

我需要将文件(图像)保存到文件夹中。 如果图像名称为“OrignalName”,则将其原始名称保存到指定的文件夹中。我正在使用

string filename = Path.GetFileName(fileupload1.PostedFile.FileName);
GenerateFileName(filename);
fileupload1.SaveAs(Server.MapPath("Images" + filename));

我应该如何将文件名更改为唯一的时间戳(yyyymmddMMss) 任何帮助将不胜感激。

5 个答案:

答案 0 :(得分:4)

System.IO.FileInfo file = new System.IO.FileInfo(FileUpload1.PostedFile.FileName);
    string fname = file.Name.Remove((file.Name.Length - file.Extension.Length));
    fname = fname + System.DateTime.Now.ToString("_ddMMyyhhmmss") + file.Extension; 

答案 1 :(得分:2)

您可以将文件名与当前日期和时间连接起来,然后将其保存到数据库中:

   string strtemp =  filename + System.DateTime.Now.ToString("ddMMyyhhmmss");

答案 2 :(得分:1)

您可以尝试使用此代码

var newPath = filename + DateTime.Now.ToString("yyyymmddMMss");
fileupload1.SaveAs(Server.MapPath("Images/" + newPath));   

答案 3 :(得分:1)

轻松将文件保存到位置然后重命名

string newName = System.DateTime.Now.ToString("ddMMyyhhmmss");
Microsoft.VisualBasic.FileIO.RenameFile(file, newName);

答案 4 :(得分:-2)

尝试以下方法:

 int generatedNo = randomNumber.Next(100, int.MaxValue);
 string filePath=Path.Combine(Server.MapPath("~/finaldesign")+generatedNo+".jpg");
 imageTosave.Save(filePath, ImageFormat.Jpeg);