最近在做Adaboost的樣本庫,從網上下載了大量的圖片,為方便讀取和管理,必須把這些圖片的名字規范成統一的格式。我上網查了一下,使用最多的批量改名方法是全選所有文件之后修改某一個文件的名字(如改成temp),回車,其余的文件名就自動改成了temp(1),temp(2),temp(3)(后綴省略)......但是這些括號是不被c++認可的,怎么辦呢?我想到了以前清理垃圾用的dos批處理命令,隧上網細查了一下,用法如下:
首先把所有文件改成上述的文件名,然后按win + r打開運行窗口,輸入cmd回車,然后進入你要改名的文件目錄下。比如我的圖片存在E:\positive\coronal下面。就輸入e:,回車,cd positive\coronal,回車。下面是最關鍵的一步:輸入 for /L %t in (1,1,3000) do ren "temp(%t).bmp" "PositiveTemplate%t.bmp",這時,所有的圖片名就被改成了PositiveTemplate1.bmp,PositiveTemplate2.bmp,PositiveTemplate3.bmp......這一句dos命令可以理解為一個for循環,%t是循環變量,(1,1,3000)的意思是(起始,步長,終止),ren是rename命令的縮寫。如果失敗的話,檢查一下空格的位置。
利用這個命令同樣可以處理從網上下載的音樂,電視劇,十分方便