WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

aktuelle dateiname auslesen?

 

asphalt
Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 07.12.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.03.2011, 10:51     Titel: aktuelle dateiname auslesen?
  Antworten mit Zitat      
Hallo
Mein Problem ist sicher trivial, aber ich finde nichts im Internet. Ich habe ein inputfile über den der Matlabcode gestartet wird. Wie kann ich den dateinamen des inputfiles automatisch auslesen und einer Variablen geben?

Danke
Private Nachricht senden Benutzer-Profile anzeigen


Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 09.03.2011, 11:09     Titel:
  Antworten mit Zitat      
Hast Du eine Datei in der die Matlab-File gestartet wird? In diesem Fall würde ich den Namen einfach als Parameter übergeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
asphalt
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 07.12.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.03.2011, 11:24     Titel:
  Antworten mit Zitat      
Es ist so

Ich habe eine mtlab Datei xyz.m hierin sind alle inputs gespeichert für das anschliessende Programm, welches aus diesem File gestartet wird.

Ich könnte natürlich in jedem Inputfile den jeweiligen Namen eintragen, aber das möchte ich gerne automatisieren.

Zuletzt bearbeitet von asphalt am 09.03.2011, 11:57, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 09.03.2011, 11:30     Titel:
  Antworten mit Zitat      
dbstack() ist die Lösung

Gleich kommt ein Beispiel..
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 09.03.2011, 11:33     Titel:
  Antworten mit Zitat      
Code:

function []=fu()

fara();

end
 


Code:

function []=fara()
tmp=dbstack();

disp(tmp(1).file);% ist der Dateiname der function fara.
% -> fu.m wenn Du die function unter fu.m abgespeichert hast
disp(tmp(1).name);% ist der Dateiname der function fara.
% -> fu

disp(tmp(2).file); %ist der gesuchte Dateiname ;)
% -> fara.m wenn Du die function unter fara.m abgespeichert hast
% -> fu.m wenn Du die function als Unterfunktion von fu hast.

disp(tmp(2).name); %ist der gesuchte Dateiname ;)
% -> fara
end

 


Wenn Du den kompletten Pfad haben willst, musst Du dbstack mit
Code:

dbstack('-completenames');
 

aufrufen. Das steht sonst alles in der doc Wink
Private Nachricht senden Benutzer-Profile anzeigen
 
asphalt
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 32
Anmeldedatum: 07.12.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.03.2011, 11:58     Titel:
  Antworten mit Zitat      
Danke,
ich hab's kapiert.

Zuletzt bearbeitet von asphalt am 09.03.2011, 12:01, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen
 
Peter Quint
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 95
Anmeldedatum: 21.02.11
Wohnort: Lübeck
Version: R2010b
     Beitrag Verfasst am: 09.03.2011, 12:00     Titel:
  Antworten mit Zitat      
naja, es sind zwei Programmzeilen die Du braucht Wink

tmp=dbstack('-completenames');
gesuchterName=tmp(2).file;
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.