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

Gui - Cell speichern und laden

 

Beginner

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.02.2008, 22:12     Titel: Gui - Cell speichern und laden
  Antworten mit Zitat      
Guten Abend,

ich habe in der Suchen-Funktion leider kein Thema finden können dass mir bei meinem Problem weiterhilft.

In meinem Programm arbeite ich mit einer 3dimensionalen Cell die ich über einen load und save button abspeichern und laden möchte. Ich wollte das ganze über uigetfile und uiputfile machen, habe es jedoch leider bisher nicht zum Laufen bekommen.

Außerdem würde mich interessieren ob ich in einem "static textfeld" eine Variable aus meinem Programm dynamisch uasgeben kann.

Über Hilfe würde ich mich sehr freuen.
VG!


denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 15.02.2008, 10:29     Titel:
  Antworten mit Zitat      
Hallo,
mit uigetfile und uiputfile kannst du bloß Auswahl treffen von wo du laden oder wo du abspeichern möchtest.
speichern musst du dann aber noch selber.
Beispiel:
Code:

A=cell(3,3,3);
[filename,pathname]=uiputfile({'*.mat'},'Save as',fullfile(pwd,'mycell.mat'));

save(fullfile(pathname,filename),'A');

clear all;  % leere workspace

[filename,pathname]=uigetfile({'*.mat'},'Load My Array',fullfile(pwd,'*.mat'));


load(fullfile(pathname,filename)); % Die cell array A ist wieder in workspace
 


Zu zweiten Frage: Ja das wäre möglich, man kannst über handle die Properties ansprechen. Wenn du aber die Zahlen übergibst, dann musst du diese in String konvertieren

Code:

a=5;
set(handles.txtHandle, 'String', num2str(a));
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Beginner

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.02.2008, 19:58     Titel:
  Antworten mit Zitat      
vielen Dank für die Hilfe!

Das Abspeichern funktioniert wie gewünscht. Das Laden der Daten klappt allerdings noch nicht. Eine Fehlermeldung wird nicht ausgegeben. Habe es so gemacht wie du mir empfohlen hast:
Code:
[filename,pathname]=uigetfile({'*.mat'},'Load Data',fullfile(pwd,'*.mat'));
 if filename ~=0
    load(fullfile(pathname,filename));
 end


Oder funktioniert der Zugriff auf die geladene Variable anders?
Wie greife ich denn im Anschluss an meinen Loadbefehl auf die cell zu?

Entschuldigt falls die Fragen sehr banal sind.
VG Daniel
 
Beginner

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.02.2008, 20:01     Titel:
  Antworten mit Zitat      
Ergänzung:
Ich habe auch mal den 'who'-Befehl ausprobiert und bekomme die Variable die ich laden möchte dann nicht als Element des Workspaces angezeigt.
 
Beginner

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.02.2008, 21:13     Titel:
  Antworten mit Zitat      
habs nun hinbekommen.

danke nochmals
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 16.02.2008, 21:33     Titel:
  Antworten mit Zitat      
Wahrscheinlich liegt am clear all, das löscht alle Elemnente aus Workspace
Aber, gut das du es auch alleine hingekriegt hast. Very Happy
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.03.2014, 11:22     Titel: Laden und abspeichern von Cell Array Inhalten
  Antworten mit Zitat      
Hi, ist zwar schon lange her, dass hier gepostet wurde, aber ich habe ein ähnliches Problem.

Ich habe eine GUI geschrieben und ein Cell Array mit uiputfile abgespeichert:

Code:
[filename,pathname]=uiputfile({'*.mat'},'Save as...')
   
    save(fullfile(pathname,filename),'OL');


Und möchte nun die Datei wieder laden und den Inhalt in OL speichern.
Ich hab folgendes probiert:

Code:
[filename,pathname]=uigetfile({'*.mat'},'Load My Array');
    B=load(fullfile(pathname,filename));
    B
 

Ich hab den Inhalt erstmal unter B gespeichert, um mir anzeigen zu lassen, was der Inhalt der geladenen Datei ist.

Das Problem ist, dass die Save Funktion den Namen des Cell Arrays mitabspeichert, z.B. wird für B angezeigt:

B= OL: [1] [2] [xyz] [4]

Ich möchte aber nun den Inhalt, also "[1] [2] [xyz] [4]" wieder meiner Variablen OL zuweisen.

Hat jemand ne Ahnung wie das klappen könnte?
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.499
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.03.2014, 13:51     Titel:
  Antworten mit Zitat      
Hallo,

entweder anschließend
Code:
OL = B.OL;
oder direkt
Code:
load(fullfile(pathname,filename));


Grüße,
Harald
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.