gpt4 book ai didi

c# - 如何在c#中一键更改2种类型的文件扩展名?

转载 作者:太空宇宙 更新时间:2023-11-03 18:22:54 25 4
gpt4 key购买 nike

我想同时更改更多文件扩展名,例如将所有.txt文件更改为.txt.NO,将.jpg.NO更改为.jpg

我的代码是这样的:

private void button_Click(object sender, EventArgs e)
{
DirectoryInfo d = new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory);
FileInfo[] infos = d.GetFiles();
foreach (FileInfo f in infos)
{
File.Move(f.FullName, f.FullName.ToString().Replace(".txt", ".txt.NO"));
File.Move(f.FullName, f.FullName.ToString().Replace(".jpg.NO", ".jpg"));
}
}

当我尝试同时进行 2 项更改时出现错误。当我仅使用第一个 File.Move 行时,我的程序正常运行。

最佳答案

当您在第一行重命名文件时,第二行将失败,因为该文件不再具有该名称。

您需要一个基于文件扩展名的条件。

foreach (FileInfo f in infos)
{
if(f.FullName.EndsWith(".txt"))
File.Move(f.FullName, f.FullName.ToString().Replace(".txt", ".txt.NO"));
else if(f.FullName.EndsWith(".jpg.NO"))
File.Move(f.FullName, f.FullName.ToString().Replace(".jpg.NO", ".jpg"));
}

关于c# - 如何在c#中一键更改2种类型的文件扩展名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45368198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com