Ich muss 2D-Array initialisieren und die erste Spalte ist jede Zeile in einer Datei. Wie erhalte ich die Anzahl der Zeilen in einer Datei?Wie bekomme ich die Anzahl der Zeilen in der Datei in C#?
Antwort
Sie müssten die Datei öffnen, in jeder Zeile zu lesen, die Zählung zu erhalten:
var lines = File.ReadAllLines(filename);
var count = lines.Length;
Von MSDN:
int counter = 0;
string line;
// Read the file and display it line by line.
System.IO.StreamReader file =
new System.IO.StreamReader("c:\\test.txt");
while((line = file.ReadLine()) != null)
{
Console.WriteLine (line);
counter++;
}
file.Close();
Sie tun können:
System.IO.File.ReadAllLines("path").Length
bearbeiten
Wie Joe hervorhebt, habe ich die gesamte Standardfehlerbehandlung weggelassen und nicht gezeigt, dass Sie dann dasselbe Array verwenden würden, um den Rest Ihres Codes zu verarbeiten.
Es kann eine effizientere Möglichkeit für größere Dateien sein, aber man konnte mit so etwas wie starten:
int l_rowCount = 0;
string l_path = @"C:\Path\To\Your\File.txt";
using (StreamReader l_Sr = new StreamReader(l_path))
{
while (l_Sr.ReadLine())
l_rowCount++;
}
wäre es wahrscheinlich sinnvoll sein, mehr für Sie tatsächlich die Datei zu öffnen, lesen Sie die Zeilen in einer Liste , dann erstellen Sie Ihr 2D-Array.
List<string> lines = new List<string>()
using(System.IO.StreamReader file = new System.IO.StreamReader(fileName))
{
while(!file.EndOfStream) lines.Add(file.ReadLine());
}
Sie können dann Ihre lines
Liste verwenden, um Ihre Array zu erstellen.
int counter = 0;
string line;
System.IO.StreamReader file = new System.IO.StreamReader("c:\\t1.txt");
while((line = file.ReadLine()) != null)
{
counter++;
}
file.Close();
Zähler gibt Ihnen die Anzahl der Zeilen. Sie können mit der Schleife auch eine Zeile in Ihr Array einfügen.
@Mutant: Sie erhalten mehr Upvotes, wenn Sie die Datei in einen using-Block stellen. –
könnten Sie gehen mit etwas exotischere wie eine Linq-Anweisung
Count * von Text-Datei
so etwas?
- 1. Wie bekomme ich die Anzahl der betroffenen Zeilen in sqlalchemy?
- 2. Wie bekomme ich die Anzahl der Zeilen in einem Textfeld?
- 3. Spark: Wie bekomme ich die Anzahl der geschriebenen Zeilen?
- 4. Wie bekomme ich die Anzahl der Elemente in der Partition?
- 5. Wie bekomme ich die Anzahl gelöschter Zeilen in PostgreSQL?
- 6. Matlab Anzahl der Zeilen in Excel-Datei
- 7. Wie bekomme ich die Anzahl der Unterdateien in PHP?
- 8. C# Anzahl der gelöschten Zeilen in Datatable
- 9. Wie bekomme ich die Anzahl der Einträge in einer Messung
- 10. Wie zähle ich die Anzahl der Zeilen in einem jqGrid?
- 11. Wie bekomme ich die Anzahl der Artikel in einer Combobox?
- 12. Wie bekomme ich die Anzahl der Wochen in einem Monat
- 13. Wie bekomme ich die Anzahl der availableProcessors in Ant
- 14. Anzahl der Zeilen in csv.DictReader
- 15. Powershell bekommen Anzahl der Zeilen der großen (großen) Datei
- 16. Anzahl der Zeilen in den Header der Flat-Datei setzen
- 17. Wie bekomme ich die Anzahl der Zeilen eines Projekts in Android Studio?
- 18. UITableView in iPhone App - Wie bekomme ich die Anzahl der Zeilen
- 19. In Vim, wie erhalten Sie die Anzahl der Zeilen in der aktuellen Datei mit vimscript?
- 20. Wie bekomme ich das Änderungsdatum von der Datei in C#?
- 21. Anzahl der Zeilen in der Matrix bestimmen
- 22. Wie bekomme ich die Liste der Wechseldatenträger in C#?
- 23. Wie die Anzahl der Zeilen im Quellcode
- 24. Wie die Anzahl der Zeilen in einer Textdatei mit SAS
- 25. Wie bekomme ich die Anzahl der Abonnenten mit 2 Tabellen?
- 26. die Anzahl der Vokale in einer Datei
- 27. Wie beschränke ich die Anzahl der Datei-Upload in HTML?
- 28. Wie bekomme ich die Anzahl der Ergebnisse, die durch Find-Methode in EMGU CV Fußgängererkennung C#
- 29. xlwt Begrenzung der Anzahl der Zeilen
- 30. Pandas HDF Begrenzung der Anzahl der Zeilen der CSV-Datei
upvote für ReadAllLines, aber ich würde tatsächlich das Array irgendwo speichern, da er es bald wieder benötigt und überprüfen Sie die Länge des gespeicherten Arrays. –
Ich war gerade dabei, eine CYA-Klausel zu schreiben, die ich dann komplett weggelassen habe. Danke – JoshBerke
Nur vorsichtig mit der Dateigröße und ReadAllLines, könnte Speicherprobleme auftreten. Nicht wirklich anwendbar mit diesem Q, da die ganze Datei trotzdem eingelesen wird. Aber normalerweise muss etwas beobachtet werden, besonders wenn Sie die Datei nicht kontrollieren. – Richard