2016-06-28 5 views
-2

Ich habe mehrere Dateien wie die folgenden, die ich brauche, um eine Schleife zu überfahren zu lesen und Grundstück: DasWie lese ich Textdateien in Matlab und Plot?

WC-02 18507.0 1115851.0 1092068.3 4239.94 Fault_interpretation_22 1 WC-02 
WC-02 18451.0 1114476.0 1091761.0 5012.56 Fault_interpretation_22 1 WC-02 

Wie kann ich tun?

+3

Bitte bearbeiten Sie Ihre Frage, es ist überhaupt nicht klar! – Woeitg

+0

Bitte setzen Sie 4 Leerzeichen vor jeder Zeile der Datei, so dass es als Code markiert ist. Dann ist der Titel nur eine kurze Zusammenfassung. Die eigentliche Frage sollte im Fragefeld stehen (wo Sie den Dateiinhalt haben ..). Bitte geben Sie an, wie Ihre Dateien aufgerufen werden und welchen Code Sie gerade haben. Wo * genau * steckst du fest? Eine Datei lesen? Plotten? Über alles schleifen? – hbaderts

+1

Ich habe die Frage für Sie neu formatiert, so dass sie zumindest lesbar ist ... Aber wie @hbaderts vorschlägt, brauchen wir mehr Informationen, um sie wirklich zu beantworten! –

Antwort

0

können Sie verwenden textscan

http://ch.mathworks.com/help/matlab/ref/textscan.html

Sie müssen wissen, wie viele Spalten in jeder Zeile sind und welche Art jeweils von ihnen (string, float, integer ...)

Aus die Dokumentation Sie ein Beispiel ähnlich wie bei Ihnen sehen:

Inhalt der Datei:

09/12/2005 Level1 12.34 45 1.23e10 inf Nan Yes 5.1+3i 
10/12/2005 Level2 23.54 60 9e19 -inf 0.001 No 2.2-.5i 
11/12/2005 Level3 34.90 12 2e5 10 100 No 3.1+.1i 

Code:

fileID = fopen('scan1.dat'); 
C = textscan(fileID,'%s %s %f32 %d8 %u %f %f %s %f'); 
fclose(fileID); 
celldisp(C) 

PD: Textscan liest die gesamte Datei, nicht Zeile für Zeile. Sie können jedoch auf die gewünschte Zeile zugreifen, indem Sie die Zellenindexierung verwenden:

C{3} % content of the third line