Renaming group of files
    4 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
I have group of images 500, and there are named from Image1, Image2, ... Image500.I Want to rename them to Box_1_Image1, Box_2_Image2,...Box_500_Image500.I Also want to keep the same sequence as of original folder and put renamed images in same folder.
3 comentarios
  Stephen23
      
      
 el 9 de Feb. de 2024
				
      Editada: Stephen23
      
      
 el 9 de Feb. de 2024
  
			" but the output is not accurate, Its like Box_1_Image1, Box_2_Image10, Box_45_Image5,Box_46_Image50. Any many others are also wrong..."
To fix that you could download and use my function NATSORTFILES:
"I Also want to keep the same sequence as of original folder"
Files in a folder do not really have a well-defined sequence. They might appear in character-code order, but that is not guaranteed by any file management system that I am aware of. The order that they are displayed in is purely an artifact of the application displaying them, e.g. Windows Explorer.
Respuestas (1)
  Stephen23
      
      
 el 9 de Feb. de 2024
        
      Editada: Stephen23
      
      
 el 9 de Feb. de 2024
  
      P = '.'; % absolute or relative path to where the files are saved.
F = 'image*.bmp'; % filename with wildcard and file extension
S = dir(fullfile(P,F));
for k = 1:numel(S)
    tmp = regexprep(S(k).name,'^\D+(\d+)(.+)$','Box_$1_Image$1$2');
    new = fullfile(S(k).folder,tmp);
    old = fullfile(S(k).folder,S(k).name);
    movefile(old,new)
end
Note how it gets the numbers matched correctly (the order here is due to DIR, is not relevant):
dir *.bmp
If you want to sort filenames into alphanumeric order then you can use my function NATSORTFILES:
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


