переименование файлов с помощью matlab - PullRequest
0 голосов
/ 02 апреля 2012

У меня есть около 100 файлов .jpg, и мне нужно переименовать их, например, у меня есть image98, image99, image100, image101 и так далее. Мне нужно переименовать их в image098, image099, image100, image101. Может ли кто-нибудь помочь мне с этим?

dirData = dir('*.jpg');         
fileNames = {dirData.name};     
for iFile = 1:numel(fileNames)  
  newName = sprintf('image%04d.jpg',iFile);
  movefile(fileNames{iFile},newName);      
end

попытался выполнить приведенный выше код, но он не работает должным образом.

1 Ответ

0 голосов
/ 03 апреля 2012

Попробуйте этот код:

dirData = dir('*.jpg');
fileNames = {dirData.name};
for iFile = 1:numel(fileNames)
  fileNum = str2num(regexprep(fileNames{iFile}, '[^0-9]', ''));
  movefile(fileNames{iFile}, sprintf('image%04d.jpg', fileNum));
end
...