How to select multiple input file one at a time.

16 vues (au cours des 30 derniers jours)
Mohana
Mohana le 18 Sep 2013
Commenté : Arvind Gauns le 27 Jan 2022
I have written a code in matlab with dialog box to open an input data file using diretorio = uigetdir; filename = uigetfile('*.txt','Select the INPUT DATA FILE');,
I do some process and produce the output using
prompt=('OUTPUT FILE NAME with .xls ext: '); title3='Output file name';
I have to run the same program for different input data files. Every time i run the program I feed the input file and get the ouput. Actually after the input data file is processed and the output file is created, the program should go to diretorio = uigetdir; for selecting another input file for processing / selection. Since there is no goto option in matlab, how to solve this. Can anyone help. Thanks in advance. Mohan.

Réponse acceptée

dpb
dpb le 18 Sep 2013
Several options depending on what you want/need...
a) if you're processing all the *.txt files in a subdirectory, there's no reason to have to select each manually -- use something like
d=dir('*.txt');
for ix=1:length(d)
fn=d(i).name
... do processing here, save results w/ dynamic output file name...
...
end
b) if you aren't doing all but know which ones, use uigetfile() but use the multipleselection optional input option --
fn=uigetfile('*.txt','Select the INPUT DATA FILE(s)','MultiSelect','on');
Then use a loop like above except the filenames are in the cell string array instead of a structure
Or,
c) if you really do need to select manually each time, just wrap your code in a while() loop and continue as long as there is a valid selection each time through...
flg=true; % set the logic variable to start the loop
while flg
fn=uigetfile('*.txt','Select the INPUT DATA FILE(s)','MultiSelect','on');
if isequal(filename,0), flg=0; break; end % no file selected; quit
% otherwise process as above here
...
end
  2 commentaires
Dmitrii Andreev
Dmitrii Andreev le 5 Oct 2017
Great answer dude, thanks, that was very helpful!!
Arvind Gauns
Arvind Gauns le 27 Jan 2022
I have few readings (each reading is a batch of 6 sequences ) .
Further each sequence has 4 parameters (not so important at this point )
i have to seperate the two different sequences (in group of 4 and 2). Hoe should the filter be like for file selction?

Connectez-vous pour commenter.

Plus de réponses (1)

teimoor bahrami
teimoor bahrami le 23 Avr 2019
hi what about .dat file extension how to select those files in subfolder

Catégories

En savoir plus sur Startup and Shutdown dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by