Verfasst am: 16.02.2009, 13:31
Titel: fprintf Probleme
Hallo,
Wie schaffe ich es, dass eine 2D Matrix mit fprintf auch wieder in gleicher Formatierung im Ascii-Format gespeichert wird? Mit dem Operator \n werden Zeilenumbrüche nach jedem Wert gesetzt. Beispiel
Code
A = [16 -3 ; 4 -15]
A =
16 -3
4 -15
>> fprintf('% 2.1f\n',A)
16.0
4.0
-3.0
-15.0
Auch das Leerzeichen vor dem '-' wird nicht gemacht.
Danke für die Hilfe.
Hallo DinaBerlin, nur um sicher zu gehen: Die tatsächliche Fragestellung bezieht sich auf das Aussehen in einer exportierten Datei mit FOPEN - FPRINTF - FLCOSE und nicht wie im Beispiel im Command Window?
Hallo DinaBerlin, nur um sicher zu gehen: Die tatsächliche Fragestellung bezieht sich auf das Aussehen in einer exportierten Datei mit FOPEN - FPRINTF - FLCOSE und nicht wie im Beispiel im Command Window?
Andreas
Ja genau, ich habe das mit der Datei weggelassen, zum besseren Darstellen. Das klappt auch. Nur mit dem Datenformat (Matrixform, Leerzeichen zwischen den Zahlen(v.a. beim - Zeichen)) haperts. Meine Originalmatrix ist auch ca 5ooox400 Zahlen groß. Braucht man eine Schleife? Bin Anfängerin...
Das Problem ist: ich habe ca. 400 Spalten. Da kann ich nicht für jede Spalte eine eigene Formateingabe machen...
UND:
Die Daten sollen zu einem sehr "sensiblen" Programm transferiert werden. Da müssen die exakt in dem Format :
Danke für den Tipp, das ist genau das, was ich gesucht habe.
Leider resultierte daraus ein weiteres Problem.
Durch den folgenden Code möchte ich überprüfen ob mein Dateipfad existiert. Falls ja soll das Programm weiterlaufen, falls nein soll es ins GUI zurückspringen. Das läuft auch soweit. Korrigiere ich den Pfad, nimmt es die Korrektur auch wahr, isdir bleibt aber weiterhin auf false. Woran kann das liegen? Ich habe schon getestet, handles.pfad wird mit dem korrigierten Pfad belegt geprüft. Ich habe auch schon vor der Aubfrage test als 1(true) definiert. Auch das ändert nichts, einmal false bleibt false bist zum erneuten Aufruf des GUIs.
if(test<1) errordlg('Datei nicht gefunden');
set(hObject,'Value',0.0);
guidata(hObject, handles);
return; %im Fehlerfall Funktion sofort beenden
end
%Datei zum speichern der Daten öffnen und beschreiben
filename=strcat(handles.pfad,'OutputVerdeckung');
fid=fopen(filename,'a'); %bei Systemwechsel ist der Pfad zu aktualisieren
Ich hab den Fehler gefunden, die Korrektur wird aus einem Textfeld eingelesen und hat doppelte '-Zeichen um den String.
Danke für eure Hilfe.
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
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.