Auslesen vieler Textdateien

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Auslesen vieler Textdateien

    Hallo :)

    Wollte mal nach euer Meinung fragen. In meinem Programm werden aus einem Listview über längere Zeit viele Textdateien abgespeichert. Diese Textdateien sollen später ausgelesen werden und bestimmte Zeilen werden mit einem Counter gezählt. Im Laufe der Zeit (jährlich) sammeln sich in dem Ordner ca. 800 - 850 Textdateien an. Zur Zeit nutze ich die "File.ReadAllLines" Methode pro Datei und geh dann per Schleife durch die Zeilen.

    Kann es bei so vielen Dateien später zu Problemen kommen? z.B. das Programm hängt
    Sollte ich eine andere Methode wählen?

    Danke schon mal ;)
    Du kannst es in einen extra Thread stecken, damit das prog nicht steckt. und ich würde vom porgramm aus den Ordner regelmäßig aufräumen. Außerdem gibt es bessere Speichermethoden als Textdateien, falls du dort Einstellungen und so speicherst

    In einen extra thread stecken:

    VB.NET-Quellcode

    1. Dim t as New Threading.Thread(AddressOf DateienAuslesen)
    2. Sub DateienAuslesen()
    3. '...
    4. End Sub

    VB.NET-Quellcode

    1. 'Aufruf:
    2. t.Start()
    Danke...das mit dem extra thread klappt soweit nur einige kleine probleme da ich schwer auf controls der form zugreifen kann (sicher/unsicher).
    @JU84553Hgd
    Es sind Logistikdaten...also "von/nach/uhrzeit/bemerkungen" usw...eine Datei kann von 5-50 Einträge haben.
    Was genau meinst du mit "Aufräumen"?
    @Memo
    Mit xml hab ich mich noch nicht viel gemacht...bisher funtionieren die "csv"(txt) ganz gut..sind auch alles nur offline Daten

    Alex00 schrieb:

    In meinem Programm werden aus einem Listview über längere Zeit viele Textdateien abgespeichert.

    Verstehe ich das richtig: Du hast ein Listview, dessen Inhalt sich geleg. ändert. Und von zeit zu zeit packst du den Inhalt auf Platte, jedesmal in eine neue Datei.
    Klingt mir sehr nach einer Datenverarbeitung, allerdings ohne die vorgesehenen Technologien einzusetzen (also das Rad neu erfunden ;)).

    Bin auch dafür, alles in einer Datei zusammenzufassen, allerdings in ein typisiertes Dataset, weil damit Daten-Anzeige/Editierung/laden/speichern phänomenal einfach geht.
    Man müsste sich aber mehr den Kopf machen, um was für daten es geht, unter welchen Umständen du abspeicherst, und wann du sie auch mal wieder holst etc.
    Und von Listview rate ich ab.
    Für TabellenDarstellung sollte man DatagridView nehmen, das ist vielfach besser dafür geeignet, ist es doch ein neueres Control, und speziell auf Tabellen ausgelegt, während Listview glaub 4 Viewmodes hat, und nur einer davon kann Spalten zeigen.
    @ErfinderDesRades

    Der Listview(Detail-Ansicht) ist nur zur visuellen Ansicht der Daten..in dem Programm könnte man auch ohne Listview arbeiten obwohl ich eine Funktion drin hab um einen willkürlichen Eintrag zu ändern. Diese erstellten Einträge werden dann als simple csv abgespeichert. Unterteilen muß ich dabei in das aktuelle Datum,Jahr,Dienstzeit und Name für den Dateinamen. Diese Dateien werden später nur noch zu Archiveinsicht oder Statistikberechnung benötigt. Mit Datagridview habe ich es anfangs probiert und es hat mir nicht wirklich zugesagt da der Benutzer auch keinen Zugriff auf die Tabelle haben soll und das Design eingeschränkt ist. Aber ich bin für Vorschläge offen...sicherlich könnte ich auch alles in eine Datendatei packen(Dataset) aber da blick ich noch nich so durch :wacko:
    kannst dirmal die Solution von DatasetOnly angugge.

    Dass du das Design von DGV eingeschränkt findest, verblüfft mich. ZB ob Readonly oder nicht, kann man mit einem Klick einstellen. Und Gitterlinien, Spaltenbreiten, ZeilenFarben, Schriftgrößen...
    Auf Vergleich DatagridView - ListView habe ich Spasseshalber ein DGV auf ListView getunt - sieht fast genauso aus, leistet aber mehr (editieren, sortieren, filtern, formatieren - alles eingebaut) und mehrfach schneller. Gucks dirmal an, auch ohne den Code zu verstehen (ist c#).