I would like to rename a 100 jpg images name at once
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
My present jpg file names are of the form IMG1 01).jpg.jpg
IMG1 02).jpg.jpg
IMG1 03).jpg.jpg...
IMG1 10758).jpg.jpg.
Would like to change it to IMG_00001, IMG_00002..
Thanks in advance
0 Kommentare
Antworten (2)
Cameron
am 10 Jan. 2023
OldNames = "IMG1 " + transpose(string(1:10758)) + ").jpg.jpg";
OldNames(1:9,1) = "IMG1 0" + transpose(string(1:9)) + ").jpg.jpg";
mkdir NewFiles
for xx = 1:length(OldNames)
copyfile(OldNames(xx),'NewFiles');
end
cd('NewFiles')
for yy = 1:length(OldNames)
NewName = sprintf('%05d',yy);
movefile(OldNames(yy),NewName)
end
4 Kommentare
DGM
am 10 Jan. 2023
Bearbeitet: DGM
am 10 Jan. 2023
You have 100 files, but you haven't clearly described where they are or how they're named.
The above script assumes your images are in the current directory.
If you have 100 numbered images whose names contain an arbitrary subset of the numbers [1 10758], then you will have to know which ones you have and how that substring is zero-padded. Perhaps it's merely all the files in a particular directory?
Since this isn't the full set from 1 to 10758, it's also important to know whether the specific number in the filename should be reused, or whether it's sufficient to merely renumber the files sequentially.
Siehe auch
Kategorien
Mehr zu File Operations finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!