Change names of multiple pictures inside a file
1 次查看(过去 30 天)
显示 更早的评论
Hi everyone, I have 25+ pics in a file named 1,2,3...up to lets say 25 and want to change their names to lets say cat1, cat2,...up to cat25
the next code does indeed change the names but not in the corect order because it reads the images in this way 1,10,11 bla bla 2,20 ... so the images get all messed up,how can i change the names in the corect way ?
a ='C:\Users\nas\Desktop\0.3';
A =dir( fullfile(a, '*.jpg') );
fileNames = { A.name };
for iFile = 1 : numel( A )
newName = fullfile(a, sprintf( '%05d.jpg', iFile ) );
movefile( fullfile(a, fileNames{ iFile }), newName );
end
0 个评论
采纳的回答
Walter Roberson
2021-4-20
a ='C:\Users\nas\Desktop\0.3';
A = dir( fullfile(a, '*.jpg') );
fileNames = fullfile({A.folder}, {A.name});
for iFile = 1 : numel(fileNames)
oldname = fileNames{iFile};
[fold, basename, ext] = fileparts(oldname);
newbase = regexprep(basename, '.*?(\d+)$', 'cat$1')
newName = fullfile(fold, [newbase ext]);
movefile( oldname, newName );
end
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!