Filter löschen
Filter löschen

How to add a variable to a filename while renaming it

26 Ansichten (letzte 30 Tage)
I have a code that reads a bunch of .text files which are of the format "experiment_date_time" which is created by a measurement device. So a typical file name would look like
"Experiment_yyyymmdd_hhmmss.txt"
Sometimes due to an error in my device internal clock, the measurement are made at weird seconds and not 00 and this a problem when I try to load the files. My question is how do I rename a filename for just the last 2 characters? I tried this so far,
files=dir(''); for the file location
%run each file through loop and rename
for i=1:length(files)
[pathname,filename,extension] = fileparts(files(i).name);
filename=filename(1:end-2)
how do I append two zeros to the file name?
Here I want to read the file name and replace the last two characters with zero. How do I do this?
Thanks, Ananth

Akzeptierte Antwort

Stephen23
Stephen23 am 7 Mär. 2017
Bearbeitet: Stephen23 am 7 Mär. 2017
Untested, but this should get you started:
ptx = ''; % directory path
S = dir(fullfile(ptx,'*.txt'));
for k = 1:numel(S)
[~,old,ext] = fileparts(S(k).name);
new = sprintf('%s00',old(1:end-2));
fpo = fullfile(ptx,[old,ext]);
fpn = fullfile(ptx,[new,ext]);
movefile(fpo,fpn)
end
  1 Kommentar
Anantha Padmanabhan
Anantha Padmanabhan am 7 Mär. 2017
Hi, the code seems to work and the only change i had to make was to create a new directory to save the new files in
fpo = fullfile(ptx,[old,ext]);
fpn = fullfile(ptx1,[new,ext]);
movefile(fpo,fpn)
Thank you

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu File Operations finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by