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

Speicherfunktion für ASCII Datei über GUI

 

morisq
Forum-Century

Forum-Century


Beiträge: 140
Anmeldedatum: 24.06.11
Wohnort: ---
Version: R2010a
     Beitrag Verfasst am: 19.09.2011, 12:38     Titel: Speicherfunktion für ASCII Datei über GUI
  Antworten mit Zitat      
Hallo Zusammen,

ich möchte innerhalb meiner GUI Matlab Routine eine Funktion implementieren welche bestimmte (von mir gewählte) Parameter in einem ASCII File abspeichert.
Das funktioniert auch wunderbar. Jetzt ist mein nächster Schritt die implementierung einer zusätzlichen Funktion durch welche ich den Speicherort dieser Datei ändern kann. Ich möchte nämlich nicht , dass diese weiterhin im Matlab Ordner liegt sonder will den Nutzer bestimmen lassen wo diese Ausgabedatei liegen soll.

Hat Jemand eine Idee mit welchen Routinen ich so etwas bewerkstelligen kann?
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.09.2011, 13:26     Titel: Re: Speicherfunktion für ASCII Datei über GUI
  Antworten mit Zitat      
Hallo morisq,

Das ist eine Aufgabe für UIPUTFILE.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
morisq
Themenstarter

Forum-Century

Forum-Century


Beiträge: 140
Anmeldedatum: 24.06.11
Wohnort: ---
Version: R2010a
     Beitrag Verfasst am: 22.09.2011, 07:22     Titel:
  Antworten mit Zitat      
ich habe jetzt folgendes implementiert:
Code:
% --- Executes on button press in pushbutton6_ASCII_File_erzeugen.
function pushbutton6_ASCII_File_erzeugen_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton6_ASCII_File_erzeugen (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
clc;

fd =   fopen('Ergebnisse.asc','wt');
ergline = ' **************************************************';
fprintf(fd,'%s \n %5.1f',ergline);
ergline = '********************* Stator *********************';
fprintf(fd,'%s \n %5.1f',ergline);
ergline = '**************************************************';
fprintf(fd,'%s\n %5.1f',ergline);
ergline = 'Nutzahl';
fprintf(fd,'%s \t\t\t\t\t\t\t',ergline,handles.edit16_Qs);
fprintf(fd,'%s \n %5.1f',[]);
ergline = 'Außendurchmesser';
fprintf(fd,'%s \t\t\t\t\t',ergline,handles.edit17_dse);
fprintf(fd,'%s \n %5.1f',[]);
ergline = 'Eisenlänge';
fprintf(fd,'%s \t\t\t\t\t\t',ergline,handles.edit18_lft);
fprintf(fd,'%s \n %5.1f',[]);
fclose(fd);
[Dateiname, Dateipfad]=uiputfile('*.asc','Speicherort festlegen');

guidata(hObject, handles);


ich kann nun zwar einen Speicherort auswählen, es wird jedoch das File nicht erzeugt, weiß Jemand was ich hier falsch mache?
Private Nachricht senden Benutzer-Profile anzeigen
 
eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 22.09.2011, 07:29     Titel:
  Antworten mit Zitat      
uiputfile() gibt dir nur den Pfad und Dateinamen zurück, den der User eingegeben hat. Speichern musst du dann trotzdem noch!
Private Nachricht senden Benutzer-Profile anzeigen
 
morisq
Themenstarter

Forum-Century

Forum-Century


Beiträge: 140
Anmeldedatum: 24.06.11
Wohnort: ---
Version: R2010a
     Beitrag Verfasst am: 22.09.2011, 08:03     Titel:
  Antworten mit Zitat      
ok. Ich möchte die vorher geschriebenen Zeilen speichern über uiputfile.
Ich verstehe zwar deine Antwort, aber nicht wie ich nun den Code verändern muss.
Code:
fd =   uiputfile(fopen('Ergebnisse.asc','wt'));


hat nicht geholfen
Private Nachricht senden Benutzer-Profile anzeigen
 
eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 22.09.2011, 08:09     Titel:
  Antworten mit Zitat      
Du musst natürlich den User erst nach dem Pfad/Dateinamen fragen und dann mit fopen entsprechend einsetzen.

Code:
[Dateiname, Dateipfad]=uiputfile('*.asc','Speicherort festlegen');
fd = fopen([Dateipfad filesep Dateiname], 'wt');
Private Nachricht senden Benutzer-Profile anzeigen
 
morisq
Themenstarter

Forum-Century

Forum-Century


Beiträge: 140
Anmeldedatum: 24.06.11
Wohnort: ---
Version: R2010a
     Beitrag Verfasst am: 22.09.2011, 08:18     Titel:
  Antworten mit Zitat      
super hat geklappt! danke
Private Nachricht senden Benutzer-Profile anzeigen
 
eupho
Forum-Meister

Forum-Meister


Beiträge: 777
Anmeldedatum: 07.01.09
Wohnort: Marburg
Version: R2009b
     Beitrag Verfasst am: 22.09.2011, 08:23     Titel:
  Antworten mit Zitat      
Gerne wieder Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Lemming
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 14.10.10
Wohnort: Chemnitz
Version: 2009b
     Beitrag Verfasst am: 30.01.2012, 14:27     Titel:
  Antworten mit Zitat      
Hallo,


ich habe ein änliches Problem.

Nur will ich keine .txt speichern sondern ein .mat-File.

Was muss ich ändern damit das funktioniert?

Habe schon ein bisschen probiert.... aber nichts hat funktioniert. Leider!

Danke für die Hilfe...
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 30.01.2012, 14:36     Titel:
  Antworten mit Zitat      
Hallo

zuerst UIPUTFILE, dann einfach SAVE Befehl verwenden
Dem SAVE-Befehl muss du dann deine Variablen übergeben, die abspeichern möchtest.
Schaue dazu doch noch in die Doku

z.b. Matrix B speichern
Code:

n = 10
B= rand(n)
[Dateiname, Dateipfad]=uiputfile('*.mat','Speicherort festlegen');
save(fullfile(Dateipfad,Dateiname),'B');
 
Private Nachricht senden Benutzer-Profile anzeigen
 
Lemming
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 14.10.10
Wohnort: Chemnitz
Version: 2009b
     Beitrag Verfasst am: 30.01.2012, 14:40     Titel:
  Antworten mit Zitat      
Danke für die schnelle Antwort.

Funktioniert!
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.