Entwickler-Ecke
IO, XML und Registry - eine Zeile aus jedem .txt File in Verzeichnis lesen
Namenlosnameless - Fr 07.05.10 18:23
Titel: eine Zeile aus jedem .txt File in Verzeichnis lesen
Hallo!
Ich habe 2 Fragen!
1) Ich habe einen Ordner mit ca 150 .txt's aus denen will ich immer eine bestimmte Zeile auslesen! Nur habe ich keine Ahnung wie ich es realisieren soll, dass jedes File ausgewählt wird! Ich habe den Begriff der Rekursion im Ohr, aber soweit ich weiß untersucht die ja jedes Unterverzeichnis mit => es wirk etwas übertrieben. theoretisch müsste es eigentlich auch mit einer foreach gehen! Allerdings sind meine bisherigen versuche kläglichst gescheitert!
2) Prinzipiel ist es kein Problem z.b. die 7 Zeile aus einem .txt File auszulesen!
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| StreamReader SR = new StreamReader(Pfad);
for (int x = 1; x <= 6; x++) { SR.ReadLine(); } string Zeile7 = SR.ReadLine(); SR.Close(); |
Meine Frage: ist das wirklich das beste??
mfg Christoph
Moderiert von
Christian S.: Topic aus C# - Die Sprache verschoben am Sa 08.05.2010 um 11:35
JüTho - Sa 08.05.10 10:50
Hallo,
da du nur die Dateinamen benötigst, kannst du Sebastians Vorschlag noch mit dem String-Array aus Directory.GetFiles vereinfachen.
Zu deiner Frage 2: Abgesehen davon, dass ich in C# eine Schleife immer beim Index 0 beginnen lassen würde und sich dadurch die Bedingung etwas ändert, gibt es faktisch keinen besseren Weg. (Da verzichte sogar ich auf mein bevorzugtes File.ReadAllLines.) Du willst die ersten 6 Zeilen überspringen; das geht nicht anders als durch Lesen und Ignorieren.
Gruß Jürgen
Kha - Sa 08.05.10 12:41
Ab .NET 4 ginge es noch etwas prägnanter:
File.ReadLines(Pfad).ElementAt(6)
Mit
ReadAllLines würde man damit unnötigerweise die gesamte Datei einlesen, aber ob das überhaupt eine Rolle spielen würde :nixweiss: ...
Ansonsten kann man am Code von
Namenlosnameless höchstens noch den fehlenden
using-Block bemängeln :) .
Namenlosnameless - Do 13.05.10 10:58
.NET 4.0 Kann sowas?? Wie genial XD!
Ich habs eh am Computer! nur wollt ich dieses Projekt in VS 2008 schreiben weil ich das auf Deutsch habe und ich mir mitm English ein bissl schwer tu!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!