Announcement

Collapse
No announcement yet.

File-Description (Zeilenanzahl) via Java

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • File-Description (Zeilenanzahl) via Java

    Hallo Leute,
    folgendes :
    ich suche nach einer Methode schnellstmöglich an die Zeilenzahl eines beliebigen Files heranzukommen, ohne dieses erst einzulesen und durchzuparsen. Ich arbeite momentan mit File-größen um 2 GByte. Da ist ein Durchgang (nur zum Zählen des Zeilenanzahl) nicht angebracht. Ich benötige allerdings ein Mximalwert, um einen Progressbar zu initialisieren. Oder hat noch jemand eine Idee, wie ich im Hintergrund (Zweitthread) einen Progressbar laufen lasse, der die Abarbeitung eines Vordergrundthreads überwacht und anzeigt ?
    Für Ideen bin ich immer dankbar,
    Gruss THomas

  • #2
    Mein erster Gedanke geht dahin, die Groesse des Files ueber java.io.File herauszulesen (geht ja ohne die 2GB durchzugehen ueber das Filesystem), und dann einfach jede gelesene Zeile nutzen, um einen Bytezaehler zu erhoehen - der Bytezaehler in Relation mit Gesamt-Byte-Anzahl ergibt dann die Steuerung fuer den Progress-Bar.
    Ist nicht ganz so genau wie die direkte Zaehlung der Zeilenumbrueche, aber bei 2GB sind eh alle 10min ein %-Punkt mehr, da kommt es auf die Abweichung nicht an.<p>
    Falls die Zeilen in etwa gleich lang sind oder ueber das gesame File eine gleichbleibende Verteilung aufweisen (also nicht zu Anfang alle kurzen und zum Ende alle langen Zeilen), wird es niemand merken.<p>
    Gruss, Marc

    Comment


    • #3
      Thomas kann doch nach dem Lesen einer Zeile die Länge des String auslesen und dann, zzg. der gelesenen Zeichen, in Relation zu 100% setzen. Dann brauch er nicht mogeln, wie man öfter sieht: für die ersten 90% des Balkens braucht er 10% der Zeit

      Comment

      Working...
      X