Nach Dateiauswahlen Pfade und Namen in Vector speichern

Hallo!
ich möchte gerne folgendes umsetzen:
  • User-Abfrage wie viel Dateien gewünscht sind (NumberOfModels)
  • Öffne Dateibrowser für jede Datei und ermögliche den User die Auswahl der Datei (immer der gleiche Dateityp)
  • Als Ergebnis sollen in drei Vektoren (path_Simu, file_Simu, pathWithFilename_Simu) den Pfad in den jeweiligen Ordner, der Dateiname mit Endung sowie der Pfad inkl. Dateiname gespeichert werden. D.h. die Vektoren haben die Dimension NumberOfModels und anschließend möchte ich diese ansteuern können, z.B. path_Simu(i)
Kann mir jemand dabei helfen?
Den dritten Punkte bekomme ich leider nicht umgesetzt..
Vielen Dank!

2 Comments

Hallo Maverick,
was genau hast du bisher versucht und welche Probleme sind dabei aufgetreten?
Grüße,
Harald
Bisher siehts so aus:
NumberOfModels = input('How many simulation models do you want to study? ');
%
vector_file_CPSimu = zeros(NumberOfModels,1);
vector_path_CPSimu = zeros(NumberOfModels,1);
vector_pathWithFile_CPSimu = zeros(NumberOfModels,1);
%
for i=1:NumberOfModels
vector_pathWithFile_CPSimu(i) = uigetfile('*.mph','Select CPSimu.mph file');
%vector_pathWithFile_CPSimu(i) = fullfile(path_CPSimu,file_CPSimu);
%cd(path_CPSimu)
end
Mit den Zeros wollte ich quasi eine Preallocation vornehmen, scheitere danach jedoch die Antworten in die Vektoren zu speichern.
LG und Danke!

Sign in to comment.

 Accepted Answer

Hallo Maverick,
zum Vorbelegen von Text würde ich strings verwenden.
Beim Aufruf von uigetfile würde ich mir immer zwei Argumente zurückgeben lassen; das zweite ist dann der Pfad.
Insgesamt also:
NumberOfModels = input('How many simulation models do you want to study? ');
%
vector_file_CPSimu = strings(NumberOfModels,1);
vector_path_CPSimu = strings(NumberOfModels,1);
vector_pathWithFile_CPSimu = strings(NumberOfModels,1);
%
for i=1:NumberOfModels
[vector_file_CPSimu(i), vector_path_CPSimu(i)] = uigetfile('*.mph','Select CPSimu.mph file');
vector_pathWithFile_CPSimu(i) = fullfile(vector_path_CPSimu(i),vector_file_CPSimu(i));
end
Viele Grüße,
Harald

5 Comments

Super, danke Harald!
Kannst du mir noch sagen, wie ich die Indizierung noch in das 'Select CPSimu.mph file' bekommen?
Also Select CPSimu.mph file number i?
Danke!
Und ich habe leider Probleme die Einträge weiter zu verarbeiten:
Error using cell/ismember
Input A of class char and input B of class cell must be cell arrays of character vectors, unless one is a character vector.
Hallo,
ich würde generell eher Strings (" ") als Char (' ') verwenden.
Zur ersten Rückfrage: "Select CPSimu.mph file " + i
Zur zweiten Rückfrage: Hier wäre wichtig, welcher Befehl die Fehlermeldung erzeugt. Wenn du durchgängig Strings verwendest, sollte sich das damit erledigen. Falls nicht, bitte den Befehl angeben, der den Fehler erzeugt.
Wenn alle Rückfragen geklärt sind, bitte die Antwort akzeptieren. :)
Viele Grüße,
Harald
Jetzt passt alles.
Vielen Dank für die Hilfe Harald!!!

Sign in to comment.

More Answers (0)

Products

Asked:

on 15 Jun 2023

Commented:

on 20 Jun 2023

Community Treasure Hunt

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

Start Hunting!