如何将旧文件夹复制到新文件夹并重命名新文件夹中的文件

时间:2015-10-15 23:20:36

标签: c#

旧文件夹名称为'dat','dat'文件夹下的所有文件都以文件夹名称为前缀,即'dat'。

示例:

DAT / dat_x1.dat
DAT / dat_b1.dat

我想创建一个新文件夹,比如'datNew'并将'dat'文件夹的所有文件添加到'datNew'文件夹中。但是,这次,'datNew'文件夹中文件的前缀采用新文件夹名称'datNew'。然后,它将提供以下内容:

datNew / datNew_xt.dat
datNew / datNew_b1.dat

我使用以下colde进行复制,但无法在文件中搜索前缀并将其替换为新前缀

File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, fName))

如何重命名新文件夹中文件的前缀?

3 个答案:

答案 0 :(得分:0)

您应该获取一个文件夹对象,然后遍历其中的每个文件对象。对于每个文件,获取旧文件名,然后确定新文件名。仍然在每个,从旧到新的复制。生成的代码如下:

File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, fNameNew))

确定新的前缀,例如:

var newFilename = fName.Replace(dat, datNew);

答案 1 :(得分:0)

以下将完成这项工作:

File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, fName.Replace(dat,dataNew)))

答案 2 :(得分:0)

这个简单的修改解决了我的问题

File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, Replace(fName, "old-prefix", "new-prefix")))