Changing the names of text files in a directory

5 visualizzazioni (ultimi 30 giorni)
I have 400 files in a directory called NAIC that are named like this: 7488311dbf9821f9.txt.001 is it possible to rename using matlab to naic1.txt till naic400.txt?

Risposta accettata

Fangjun Jiang
Fangjun Jiang il 27 Lug 2011
Copy all your files to a folder named '\test' under current folder, run the following code.
Folder=fullfile(pwd,'test');
Files=dir(Folder);
for k=1:length(Files)
[PathStr,FileName,FileExt]=fileparts(Files(k).name);
if length(FileExt)==4 % Exclude folder . and folder ..
movefile(fullfile(Folder,Files(k).name),...
fullfile(Folder,['naic',FileExt(2:end),'.txt']));
end
end

Più risposte (2)

Nathan Greco
Nathan Greco il 27 Lug 2011
Maybe this will do? (Run this under your NAIC directory.)
Assuming you are on a windows machine:
files = dir('*.txt.*');
names = {files.name}
for i=1:length(names)
oldfilename = names{i};
newfilename = sprintf('naic%d.txt',str2num(oldfilename(end-2:end)));
system(['ren ' oldfilename ' ' newfilename]);
end
OR (shouldn't matter what system you're on):
files = dir('*.txt.*');
names = {files.name}
for i=1:length(names)
oldfilename = names{i};
newfilename = sprintf('naic%d.txt',str2num(oldfilename(end-2:end)));
movefile(oldfilename,newfilename);
end

Walter Roberson
Walter Roberson il 27 Lug 2011
Use movefile() in conjunction with the information in this FAQ

Categorie

Scopri di più su Characters and Strings in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by