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

Externe Datei (Windows) öffnen

 

Martinuk
Forum-Century

Forum-Century


Beiträge: 208
Anmeldedatum: 18.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2012, 17:37     Titel: Externe Datei (Windows) öffnen
  Antworten mit Zitat      
Hallo,

ich möchte gerne eine externe Datei zB. im Windows-Editor öffnen. Dies funktioniert ja recht einfach mit
Code:
winopen(fileName)

solange die zu öffnende Datei bereits mit dem Windows-Editor verknüpft ist.

Ich möchte aber gerne wissen wie man eine Datei über Matlab öffnen kann, ohne vorher sicherzustellen zu müssen, dass der Dateityp immer mit dem Windows-Editor geöffnet wird.

Hat jemand eine Idee wie dies funktioniert, wenn nicht mit "winopen", dann vllt. mit einem anderen Befehlt.
Bin für jede Hilfe dankbar.
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.07.2012, 20:24     Titel:
  Antworten mit Zitat      
Hallo,

wenn das Programm, mit dem du die Datei öffnen willst, das zulässt, kannst du
Code:
!programm.exe datei.endung

aus MATLAB heraus ausführen. Etwas besseres fällt mir momentan nicht ein.

Vielleicht kannst du noch genauer schildern, wie das Problem zustande kommt?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Martinuk
Themenstarter

Forum-Century

Forum-Century


Beiträge: 208
Anmeldedatum: 18.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2012, 20:56     Titel:
  Antworten mit Zitat      
Hallo Harald,

zunächst danke für deine schnelle Antwort. Vorab, ich hab deine Codezeile noch nicht ausprobiert.

Aber das Problem kann wie folgt zustande kommen. Angenommen ich habe eine Datei mit der Endung *.txt (ich weiß, nicht sehr sinnvoll aber es geht ja nur ums Prinzip). Diese sagen wir ist standardmäßig nicht mit dem Notepad in Windows verknüpft, ich würde also auf Öffnen gehen und diese mit Notepad verknüpfen. Dann funktionierts auch prima in Matlab mit winopen.
Allerdings wenn ich jetzt das GUI auf einem anderen Rechner verwende, dann kann es sein das eben diese Dateiendung (in diesem Fall jetzt *.txt) wieder nicht mit dem Editor verknüpft ist. Matlab würde eine Fehlermeldung im Commando-Window ausgeben, da winopen keine Fehler zurückgibt.

Habs aktuell mit try, catch gelöst, sprich ich mach den User über einen Error Dialog drauf aufmerksam das winopen die Datei nicht öffnen kann. Aber jetzt werd ich gleich mal deine Zeile ausprobieren.

Vielleicht ist das Problem jetzt besser verständlich und vielleicht hast du ja was noch Besseres Smile.

Schönen Dank.
Private Nachricht senden Benutzer-Profile anzeigen
 
Martinuk
Themenstarter

Forum-Century

Forum-Century


Beiträge: 208
Anmeldedatum: 18.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.07.2012, 21:09     Titel:
  Antworten mit Zitat      
Hallo Harald,

habe deine Codezeile ausprobiert. Ist eigentlich genau das was ich brauche allerdings habe ich ein Problem damit.

Wenn ich die Codezeile so anwende
Code:
!notepad.exe C:\Users\Martinuk\Desktop\Matlab_GUI\Dummy\TXT1.Endung

funktioniert es wie es sollte.
Ich habe allerdings einen Button in Kombination mit dem Befehl
Code:
[file, pathname] = uigetfile(...)
x = fullfile(pathname, file)
!notepad.exe x
 

Letzteres funktioniert leider nicht, Matlab scheint irgendwie nicht zu wissen das x der vollständige Pfad inkl. Dateiname.Endung ist.

Oder übersehe ich da etwas?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 13.07.2012, 22:55     Titel:
  Antworten mit Zitat      
Hallo,

in der Form kann MATLAB den String nicht auswerten. Das müsste aber gehen:

Code:
[file, pathname] = uigetfile(...)
x = fullfile(pathname, file)
system(['notepad.exe ' x])


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Martinuk
Themenstarter

Forum-Century

Forum-Century


Beiträge: 208
Anmeldedatum: 18.04.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.07.2012, 00:19     Titel:
  Antworten mit Zitat      
Hallo Harald,

damit funktionierts wunderbar. Danke !
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.