在同一个文件夹内重命名
- 使用系统的dos操作,实测速度更快
command = [‘rename’ 32 oldname 32 newname];
status = dos(command); - 使用movefile(oldname,newname),很慢
详细可参见matlab的help
在不同文件夹内重命名
速度比前者快几十倍,估计是因为前者在同一个文件夹内操作新建new,删除old之类的操作,占用大量资源,也许还要多次获取系统权限、比对之类。
- 使用不同文件夹重命名的方法:在某位置下新建一个Temp文件夹,用movefile把原文件move过去产,同时直接用新命称。再从Temp文件把所有重命名后的文件move回来,删除Temp文件夹。
对于单个文件体积较小,文件数量较多的情况,推荐上述方法。
如果单个文件体积较大,可能前一种方法更好,未知,如果有人测试出结果,麻烦告诉我一下,谢谢。