Variablen aus Listbox in matfile speichern
tronic
Forum-Anfänger
Beiträge: 13
Anmeldedatum: 25.08.09
Wohnort: ---
Version: 7.7
Verfasst am : 07.09.2009, 11:05
Titel : Variablen aus Listbox in matfile speichern
Hallo,
Ich habe variablennamen des workspace in einer listbox stehen und möchte nun genau diese variablen in eine mat-file speichern.
Das funktioniert mit
.
Soweit so gut...
Bleibt aber die Frage wie ich den String aus der listbox hier am besten
"zerhacke", um ihn in die save funktion zu bekommen.
Über eine Schleife jedes Element des listbox-string cellarrays abspeichern?
Das erscheint mir etwas kompliziert...
Geht doch bestimmt noch einfacher !
Bin offen für Vorschläge
Gruß
denny
Supporter
Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
Verfasst am : 07.09.2009, 15:31
Titel :
tronic
Themenstarter
Forum-Anfänger
Beiträge: 13
Anmeldedatum: 25.08.09
Wohnort: ---
Version: 7.7
Verfasst am : 08.09.2009, 10:19
Titel :
Super, genau das hab ich gesucht
Danke dir
tronic
Themenstarter
Forum-Anfänger
Beiträge: 13
Anmeldedatum: 25.08.09
Wohnort: ---
Version: 7.7
Verfasst am : 14.09.2009, 10:02
Titel :
Hätte noch mal ne Frage dazu...
Das Speichern an sich funktioniert einwandfrei.
Ich realisiere den speichervorgang über die uiputfile-Funktion, also über ein Speichern-Dialogfenster, um an den dateinamen und den pfad zu kommen.
Falls ich aber im geöffneten Dialogfenster auf "Abbrechen" drücke, gibt MATLAB mir den Fehler
aus.
Beim Laden ist es genauso.
Aktueller Code:
Code:
vars = get ( handles.lbox_var , 'String ') ;
%Pfad & Dateiname über Box einlesen
[ datei, pfad] = uiputfile ( '*.mat ', 'Konfigurationsdatei speichern ') ;
evalin ( 'base ', [ 'save( ''', [ pfad datei] , '''', sprintf ( ', ''%s''',vars{ :} ) , ') '] ) ;
Als Fehlerursache wird die evalin-Zeile angegeben. Wird da evtl. beim Drücken auf "Abbrechen" in dateiname und pfad ein ungültiger wert geschrieben ?
Gruß
denny
Supporter
Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
Verfasst am : 14.09.2009, 10:20
Titel :
Hallo, weil du auf Abbrechen drückst,
kommt als Rückgabe statt String-Werte Double Werte zurück.
Das muss man durch IF-Abfrage abfangen.
Code:
vars = get ( handles.lbox_var , 'String ') ;
%Pfad & Dateiname über Box einlesen
[ datei, pfad] = uiputfile ( '*.mat ', 'Konfigurationsdatei speichern ') ;
if ~ isequal ( pfad,0 )
evalin ( 'base ', [ 'save( ''', fullfile ( pfad, datei) , '''', sprintf ( ', ''%s''',vars{ :} ) , ') '] ) ;
else
return ;
end
Einstellungen und Berechtigungen
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
| RSS
Hosted by:
Copyright © 2007 - 2024
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.