重命名文件就是重命名文件的扩展名

时间:2020-09-18 18:29:04

标签: c#

在我的网站上,我让用户上传文件,并且在将文件保存到服务器之前,我正在重命名文件。如果用户上传文件test.pdf,我想重命名文件test_123.pdf,但是将文件重命名为test.pdf_123.pdf下面是我的代码:

foreach (HttpPostedFile uploadedFile1 in UploadPDF.PostedFiles)
                        {
                            if (Path.GetExtension(uploadedFile1.FileName) == ".pdf")
                            {
                            
                                 UploadedFile = UploadPath + uploadedFile1.FileName;
                                 RenamedFile = UploadPath + uploadedFile1.FileName + "_" +  applicationID + ".pdf";
                                 File.Move(UploadedFile, RenamedFile);
                            
                            }
                        }

每个文件的applicationID都在变化。

使用上面的代码,我对文件的重命名将附加到已经存在的文件扩展名之后。

2 个答案:

答案 0 :(得分:1)

在处理更改之前,您需要删除扩展名并仅使用文件名部分:

UploadedFile = UploadPath + uploadedFile1.FileName;
UploadedFileTemp = UploadPath + Path.GetFileNameWithoutExtension(uploadedFile1.FileName);
RenamedFile = UploadedFileTemp + "_" +  applicationID + ".pdf";

答案 1 :(得分:0)

我认为这是由于uploadedFile1.FileName而引起的。上传之前,只需删除扩展名即可。有一个可能有用的Trim函数。

看看这个链接:.Net Trimming

我认为您可以使用TrimEnd()函数删除扩展名。