今天遇到一个问题,是有关文件移动的,比较棘手,刚解决完就立马发篇文章保存下来,一方面自己看,一方面给大家分享一下。
首先在我的Unity项目里,资源图片文件夹里面大概有400多张图,分别在各自命名的文件夹中,现在需要把所有图都放到一个文件夹里面,比较尴尬的是一个个的复制粘贴比较麻烦,需要操作400多次,然后作为程序猿的我肯定不能使用这么笨重的方式了,能偷懒用代码解决,就不用一次次的剪切粘贴,再加上Unity项目比较大,每次操作再重新缓存一次,加载的时间也够我抽根烟喝杯茶了。
百度搜了很多大佬的文章,最后,找到了合适自己的方式,上代码:
string txtFilePath = @"XXX";
//参数:目录 通配符,取得包含子目录的所有文件
string[] files = Directory.GetFiles(txtFilePath, "*.jpg*", SearchOption.AllDirectories);
for (int i = 0; i < files.Length; i++) //移动文件到指定目录。
{
string[] striNa = files[i].Split('\\');
string filesName = striNa[striNa.Length-1];
Console.WriteLine(filesName);//名称 txtFilePath目标路径
Console.WriteLine(files[i]);//初始路径
File.Move(files[i], txtFilePath+filesName);//源文件路径,目标文件路径
}
Console.ReadKey();
因为这个脚本里面是所有我自己写的内容,不方便全部粘贴上来,只粘贴了我使用的部分,直接放在main函数中就可以使用了,XXX代表文件路径