使用Path.ChangeExtension更改文件的扩展名


  1. 我的第一个方法应该重命名文件名,但它仍然以相同的格式上传到web。从逻辑上讲,它应该可以工作,但我想有一些问题

    Path.ChangeExtension(create.PostedFile.FileName.ToLower(), ".jpg");
    

    因为当我调试项目时,它会识别.png格式的文件,我指的是

    if (Path.GetExtension(create.PostedFile.FileName).ToLower() == ".png")
    

    但它不会改变文件的扩展名。

    if (Path.GetExtension(create.PostedFile.FileName).ToLower() == ".png")
    {
    Path.ChangeExtension(create.PostedFile.FileName.ToLower(), ".jpg");
    }
    
  2. 我尝试了不同的方法,它给了我:

    找不到文件"C:\Program Files(x86(\IIIS Express\1.png"。

    所以我被困在这里了。

    if (Path.GetExtension(create.PostedFile.FileName).ToLower() == ".png")
    {
    File.Move(create.PostedFile.FileName,
    Path.ChangeExtension(create.PostedFile.FileName, ".jpg"));
    }
    
  1. 重命名文件。应该使用方法File.Renamehttps://learn.microsoft.com/en-us/dotnet/api/microsoft.visualbasic.fileio.filesystem.renamefile?view=net-6.0

方法Path.ChangeExtension仅用于创建新文件名!

  1. 由于目标目录,我猜您部署应用程序的目录不是C:Program Files (x86)IIS Express

检查这个。

如何在部署dll后获取C#中的安装目录';s

注意

File.Move(create.PostedFile.FileName, Path.ChangeExtension(create.PostedFile.FileName, ".jpg"));

移动之前没有创建文件。你必须手动创建张贴的文件第一

最新更新