Changing the names of text files in a directory

4 次查看(过去 30 天)
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?

采纳的回答

Fangjun Jiang
Fangjun Jiang 2011-7-27
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

更多回答(2 个)

Nathan Greco
Nathan Greco 2011-7-27
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 2011-7-27
Use movefile() in conjunction with the information in this FAQ

类别

Help CenterFile Exchange 中查找有关 Characters and Strings 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by