Ich habe eine Frage bezüglich der Oktav- oder Matlab-Datennachbearbeitung. Ich habe Dateien von fließend wie unten ausgeführt:octave/matlab Textdatei Zeile für Zeile lesen und nur Zahlen in Matrix speichern
"Surface Integral Report"
Mass-Weighted Average
Static Temperature (k)
crossplane-x-0.001 1242.9402
crossplane-x-0.025 1243.0017
crossplane-x-0.050 1243.2036
crossplane-x-0.075 1243.5321
crossplane-x-0.100 1243.9176
Und ich möchte für die Nachbearbeitung Oktave/Matlab verwenden. Wenn ich zeilenweise erste Zeile lese und nur die Zeilen mit "crossplane-x-" in eine neue Datei speichere oder die Daten in diesen Zeilen direkt in einer Matrix abspeichern. Da ich viele ähnliche Dateien habe, kann ich Plots erstellen, indem ich einfach ihre Titel anrufe. Aber ich gehe Probleme auf identifizieren Zeilen, die das Zeichen "crossplane-x-" enthalten. Ich versuche, Dinge wie folgt zu tun:
clear, clean, clc;
% open a file and read line by line
fid = fopen ("h20H22_alongHGpath_temp.dat");
% save full lines into a new file if only chars inside
txtread = fgetl (fid)
num_of_lines = fskipl(fid, Inf);
char = 'crossplane-x-'
for i=1:num_of_lines,
if char in fgetl(fid)
[x, nx] = fscanf(fid);
print x
endif
endfor
fclose (fid);
Würde jemand etwas Licht auf dieses Problem werfen? Benutze ich die richtige Funktion? Vielen Dank.
Ich denke, grep oder awk für diese Aufgabe besser geeignet ist – Andy
Sie Andy Danke, habe ich sed ... – BeYo