我目前有以下路径:
E:\ Testing \ mp3_part1 \ x \ y \ filename.mp3
有200个“ x”文件夹和5个“ y”文件夹。每个y文件夹中包含1-1000个文件
对于所有最终文件,我需要将路径名更改为:
E:\ Testing \ y \ x \ filename.mp3
我觉得比一堆复制/粘贴有一种简单,快捷的方法。请帮忙吗?
答案 0 :(得分:0)
我不知道您使用的是哪种语言,但是大多数运行时库都具有“移动”功能来执行复制。它们还具有从文件夹中获取文件列表的功能。
那么,基本思想是:
for x in xValues
for y in yValues
sourceDir = "E:\Testing\mp3_part1\" + x + "\" + y + "\"
destDir = "E:\Testing\" + y + "\" + x + "\"
sourceFiles = Directory.GetFiles(sourceDir, "*.mp3")
for each file in sourceFiles
File.Move(file, destDir + file.name)
您需要更改Directory.GetFiles
和File.Move
以反映您正在使用的任何运行时库。我从.NET运行库中获得了这些名称,尽管可能我弄错了参数。
关于File.Move
功能的好处是,它可以通过更改目录条目来移动文件,而不必将位从一个位置实际复制到另一位置,然后删除旧文件。如果源和目标位于同一逻辑驱动器上,则可以非常快速地进行此操作。