AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zeilenweises Lesen einer TXT-Datei?

Ein Thema von HaCkAttaCk2001 · begonnen am 14. Okt 2004 · letzter Beitrag vom 26. Okt 2004
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von HaCkAttaCk2001
HaCkAttaCk2001

Registriert seit: 4. Nov 2003
Ort: Chemnitz
95 Beiträge
 
#11

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 18:45
Hi.

Die Größe der Dateien sind verschieden. Aber es kann durchaus mal vorkommen, dass die Datei über 10000 Einträge hat. Also ist FileStream schneller? Hm, ok werd ich mich mal damit befassen *delphi-hilfe-zück*.


C ya.
Support bacteria! They are the only culture some people have...
  Mit Zitat antworten Zitat
Benutzerbild von ste_ett
ste_ett

Registriert seit: 10. Sep 2004
Ort: Dülmen
464 Beiträge
 
Delphi 7 Professional
 
#12

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 18:46
Zitat:
Irgendwie verstehe ich auch warum nur die erste Zeile kommt... woher soll Delphi wissen welche Zeile er nun auslesen soll? Aber irgendwie weiß ich nicht wie ich das vermitteln soll Neutral .

Ganz einfach.

Reset(TextFile)
setzt den Zeiger für diese Datei an den Anfang der Datei.

Readln(TextFile,String)
ließt bis zum Zeilenende, und setzt den Zeiger auf den Anfang der nächsten Zeile.
Stefan
"Geht nicht!" ist keine Fehlerbeschreibung und "Hab ich schon versucht!" keine Antwort!

Hey, it compiles! Ship it!
  Mit Zitat antworten Zitat
Benutzerbild von HaCkAttaCk2001
HaCkAttaCk2001

Registriert seit: 4. Nov 2003
Ort: Chemnitz
95 Beiträge
 
#13

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 19:31
Hi.

Habs mal mit GetTickCount ausgemessen und das mit der StringList geht tatsächlich schneller, weil weniger Schleifen etc. benötigt werden. Zudem ist der Code damit auch wesentlich kleiner .


THX! .


C ya.
Support bacteria! They are the only culture some people have...
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#14

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 19:34
Wie groß war den der Unterschied? Gettickcount ist nicht gerade genau!
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#15

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 19:37
noch mal so zur info, was liest du für Daten ein ?
werden die Daten von dir erzeugt (aus einem deiner Programme erzeugt ?)

Ganz so vergleichen kannst du die zeiten nicht !

da müßtest du bei der AssignFile variante :

Delphi-Quellcode:
CheckListBox.Items.BeginUpdate;
// hier der restliche code
ChecklistBox.Items.EndUpdate;
dann hast du reele Zeiten !
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von HaCkAttaCk2001
HaCkAttaCk2001

Registriert seit: 4. Nov 2003
Ort: Chemnitz
95 Beiträge
 
#16

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 20:01
Hi.

GetTickCount ist ungenau?! Aber was sollte ich denn da nehmen? Das war das einzig mir bekannte um sowas zu messen .

Wenn ich's mir recht überlege, könnte ich gleich was einbauen das einzeigt, wie lange es gedauert hat, die Liste(n) zu laden... nur was soll ich eurer Meinung nach nehmen?

Edit: Ach ja, die Daten sind entweder URLs oder lokale Dateien. Jede in einer eigenen Zeile. Die hat der User vorher schon irgendwie erstellt.


C ya.
Support bacteria! They are the only culture some people have...
  Mit Zitat antworten Zitat
Gruber_Hans_12345

Registriert seit: 14. Aug 2004
1.439 Beiträge
 
Delphi 2007 Professional
 
#17

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 15. Okt 2004, 20:07
GetTickCount ist auf 18 ms genau (oder war es einmal) dh. wenn der unterschied unter 10 ms ist, dann kannst nicht genau sagen wer um wieviel schneller ist.
Besser / Genauer wäre QueryPerformanceCounter und QueryPerformanceFrequency
Gruss Hans

2B or not 2B, that is FF
  Mit Zitat antworten Zitat
Benutzerbild von Dano
Dano

Registriert seit: 12. Aug 2004
49 Beiträge
 
#18

Re: Zeilenweises Lesen einer TXT-Datei?

  Alt 26. Okt 2004, 20:56
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  Frequenz,Time1,Time2: Int64;
begin
  QueryPerformanceFrequency(Frequenz); // zeitmessung
  QueryPerformanceCounter(Time1); // zeitmessung

  !!! zu messende funktion hier !!!

  QueryPerformanceCounter(Time2); // zeitmessung

  //1. ausgabe in millisekunden
  Form1.Label1.Caption:=FormatDateTime('hh:nn:ss:zzz',IncMilliSecond(0,Round( (Time2-Time1)/Frequenz*1000 ))); // zeitmessung

  //2. oder in tick's
  Form1.Label1.Caption:=FloatToStrF(Time2-Time1,ffNumber,99,0); // zeitmessung

end;
das ganze kann durch das multitasking aber etwas abweichen...
geht glaube erst ab NT,2000,XP
und windows muß in uses sein...

mfg Dano
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz