Hallo,
Ich habe folgendes Problem. Ich hab hier ein Programm, welches eine TXT Datei laden soll. Danach soll es aus den unterschiedlichen nummerischen Werten das Minimum, Maximum sowie das Arithmetische Mittel errechnen...
Die TXT Datei besteht aus "zwei" Teilen. Ein Kommentar Bereich und eben die Werte.
Also meine Überlegung wäre nun, den Kommentarbereich in ein Memo-Feld zuladen. Funktioniert auch...
Die einzelnen Werte der TXT sind wohl am besten in einem StringGrid aufgehoben. Nun möchte ich aber die TXT erst aber einer gewissen Zeile (nämlich nach dem Kommentar-Bereich) laden...Wie stell ich das an?
Hier erstmal die TXT:
Delphi-Quellcode:
'**************************************************************************
'LogView File; ScopeView Version:1.03
'Copyright 1994, AGA Associates.
'File Created: 10:20:24pm Nov 14, 03
'**************************************************************************
'Timebase: 00:00:01
'Hi Limit: Off
'Lo Limit: Off
'Filter Mode: Capture All Data; Filter Off
'**************************************************************************
0020 C TE 09:20:01pm
0020 C TE 09:20:02pm
0020 C TE 09:20:03pm
0020 C TE 09:20:04pm
0021 C TE 09:20:05pm
0022 C TE 09:20:06pm
0023 C TE 09:20:07pm
0023 C TE 09:20:08pm
0024 C TE 09:20:09pm
0023 C TE 09:20:10pm
0023 C TE 09:20:11pm
0022 C TE 09:20:12pm
0020 C TE 09:20:13pm
0020 C TE 09:20:14pm
0019 C TE 09:20:15pm
....usw....
So lade ich die TXT in das StringGrid:
Delphi-Quellcode:
procedure TForm2.btLadenClick(Sender: TObject);
var Datei: Textfile;
ZeileIndex, SpalteIndex: integer;
Zeile: string;
//Laden der TXT in das StringGrid
AssignFile(Datei, OpenDialog1.FileName);
reset(Datei);
ZeileIndex:=1;
while not EoF(Datei) do
begin
readln(Datei, Zeile);
SpalteIndex:=0;
while pos(chr(9), Zeile) <> 0 do
begin
sgMess.Cells[SpalteIndex, ZeileIndex]:=copy(Zeile, 1, pos(chr(9), Zeile)-1);
delete(Zeile, 1, pos(chr(9), Zeile));
inc(SpalteIndex);
end;
sgMess.Cells[SpalteIndex, ZeileIndex]:=Zeile;
inc(ZeileIndex);
//Tabelle automatisch um 1 Zeile erhöhen
sgMess.RowCount:=sgMess.RowCount+1;
end;
CloseFile(Datei);
//letze Zeile ist zuviel -> überstehende Zeile löschen
sgMess.RowCount:=sgMess.RowCount-1;
end;
Aber wiegesagt, soll der Inhalt erst nach dem Kommentar-Bereich geladen werden (ab der 10 Teile).
Kann mir jemand helfen?
EDIT: Das erste Problem ist gelöst! Der der Inhalt wird erst nach dem Kommentar-Bereich, in das StringGrid geladen...
Fehlt noch die Maximum, Minimum und Mittelwert bestimmung...