如何将旧文件夹复制到新文件夹并重命名新文件夹中的文件
问题描述:
旧文件夹名称是'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))
如何重命名新文件夹中的文件的前缀?
答
你应该得到一个文件夹对象,然后迭代其中的每个文件对象。对于每一个,获取旧的文件名,然后确定新的文件名。仍然在每一个,从旧到新复制。最后的代码是:
File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, fNameNew))
要确定新的前缀,像:
var newFilename = fName.Replace(dat, datNew);
答
下面将做的工作:
File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, fName.Replace(dat,dataNew)))
答
这种简单的修改解决了我的问题
File.Copy(Path.Combine(dat, fName), Path.Combine(datNew, Replace(fName, "old-prefix", "new-prefix")))