Entwickler-Ecke
WinForms - Jede 5 Zeile aus CSV Datei einlesen
edvazubi - Di 02.07.19 14:24
Titel: Jede 5 Zeile aus CSV Datei einlesen
Hallo,
ich will ein Datagridview mit einer CSV Datei befüllen. Da ich die Datei selber aus dem Datagridview im erzeuge, sieht diese etwas seltsam aus. Aus diesem Grund, möchte ich jede 5. Zeile einlesen. Das ist nämlich die, die die richtigen Werte für mein Datagridview enthält. Mein aktueller Code sieht folgendermaßen aus:
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34:
| private void btnEinfügen_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); using (System.IO.TextReader tr = File.OpenText((@"C:\Brauerei\export.csv"))) { string line; List<string[]> lststr = new List<string[]>(); while ((line = tr.ReadLine()) != null) {
string[] items = line.Trim().Split(','); lststr.Add(items); } int col = lststr.Max(x => x.Length); if (dt.Columns.Count == 0) { for (int i = 0; i < col; i++) dt.Columns.Add(new DataColumn("Column" + i, typeof(string))); } foreach (string[] item in lststr) { dt.Rows.Add(item); }
} this.dataGridView1.DataSource = dt; } |
Den Codeschnipsel habe ich selber aus dem Internet. Ich habe auch schon versucht ihn anzupassen, bekomme es aber nicht richtig hin.
edvazubi - Di 02.07.19 14:36
Zudem fällt mir auf, dass so meine erste Zeile nicht zum Header wird...
Ralf Jansen - Di 02.07.19 20:18
Zitat: |
Da ich die Datei selber aus dem Datagridview im erzeuge, sieht diese etwas seltsam aus. Aus diesem Grund, möchte ich jede 5. Zeile einlesen. |
Mal so am Rande. Wenn du es selbst gemacht hast ist es keine gute Erklärung warum es schlecht ist und nicht geändert werden kann. Selbst gemacht gibt dir eigentlich alle Möglichkeiten es auch selbst besser zu machen. Wenn du denn schon erkannt hast das es in dieser Form jetzt nicht so ideal ist.
Fremden Code nehmen ist ok. Fremden Code nehmen, nicht verstehen und dann andere Fremde fragen diesen Code zu verbessern ist jetzt auch nicht so die das Ideale vorgehen programmieren zu lernen.
Ich würde dir empfehlen diesen Code zu debuggen. Wenn du das nicht kannst (das debuggen) so solltest du das schnellst möglich lernen.
Vor dem debuggen solltest du schon eine grobe Vorstellungen haben was dieser Code ungefähr tun sollte bzw. was denn die Steps wären die ein Code tun müsste würdest du ihn selbst schreiben. Beim debuggen des Codes solltest du dann deine Erwartungen mit der Wirklichkeit abgleichen. Die Differenz sollte dir soviel über den Code sagen das du ihn selbst verbessern kannst bzw. uns dazu dann konkrete tatsächliche Fragen stellen kannst die wir/ich dann auch gerne beantworten. In der jetzigen Form können wir das nur für dich machen ohne dir tatsächlich zu helfen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 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!