如何在存储在文件和数据库中之前更改文件名

本文关键字:文件名 数据库 存储 文件 | 更新日期: 2023-09-27 17:55:34

此代码用于检查用户是否上传了任何文件和文件名文件。

if (FileUpload1.HasFile) {
    fileName = FileUpload1.FileName;
    FileUpload1.PostedFile.SaveAs(Server.MapPath("~/Data/") + fileName);
    fileLocation = Server.MapPath("~/Data/") + fileName;
}

我想知道我可以在文件名的末尾添加当前日期。 我的文件可以是任何类型的文件。我确实尝试添加文件名=文件上传1.文件名+更新;但是该文件将另存为example.jpg11062015,并且该文件将损坏。

有人知道怎么做吗?

如何在存储在文件和数据库中之前更改文件名

您可以使用PathFileName分隔为文件名和扩展名,在中间插入日期,然后将它们组合回来,如下所示:

var fn = Path.GetFileNameWithoutExtension(FileUpload1.FileName);
var ext = Path.GetExtension(FileUpload1.FileName);
var fileName = string.Format("{0}{1:yyyy-MM-dd}.{2}", fn, DateTime.Now, ext);

尝试将文件名解析为多个部分,并在两者之间插入日期,如下所示:

var newFileName = Path.GetFileNameWithoutExtension(FileUpload1.FileName)
                  + "11062015"  // or wherever the date is coming from
                  + Path.GetExtension(FileUpload1.FileName);

原始文件名:"someFile.ext"

修改的文件名:"someFile11062015.ext"