有意义的自动重命名文件使用ASP.NET
本文关键字:ASP NET 文件 重命名 有意义 | 更新日期: 2023-09-27 17:48:56
编码平台:ASP。. NET 4.0 c#
考虑以下场景:
我正在上传一个名为"StackOverflow.doc"的文件到文件夹Documents使用asp:FileUpload
。
但是文件夹documents已经有一个名为"StackOverflow.doc"的文件。
在这种情况下,我想重命名我的文件为StackOverflow(1).doc.
我知道如何使用GUID或通过分配临时名称来使文件名唯一。
但我需要的是一个类似windows资源管理器的解决方案。哪一种方法是最好的?
p。S:解决方案应该是冗余的。也就是说,如果有名为StackOverflow.doc和StackOverflow(1).doc的文件,我的重命名文件应该是StackOverflow(2).doc
下面是一种获取文件名的方法(为简洁起见,不包括文件路径逻辑):
string fileName = downloadFileName;
string fileExt = downloadFileExtention;
string fullFileName = string.Format("{0}.{1}", fileName, fileExt);
int counter = 0;
while(File.Exists(fullFileName))
{
counter++;
fullFileName = string.Format("{0}({1}).{2}", fileName, counter, fileExt);
}
// Write the file to fullFileName