2017-08-11 2 views
1

Ich versuche, Datagridview in Textdatei zu konvertieren. Wenn ich diesen Code verwende, bekomme ich diese Textausgabe. Ex.Wie fügt man einfachen Text zwischen Spalten in der Ausgabe von datagridview hinzu? C#

"Anfang des Textes! Diese 170 ist Nummer Diese 80 ist Nummer Ende des Textes!"

Diese 170 und 80 Nummern werden von Datagridview erzeugt.

Ich möchte diese Ausgabe erhalten. Ex.

"Anfang des Textes! Diese 170 ist Nummer Ende des Textes!"

Also ich möchte nicht "Dies" und "ist Nummer" in der zweiten Spalte hinzufügen.

Entschuldigung für mein schlechtes Englisch, wenn dieser Text nicht verständlich ist.

private void button3_Click(object sender, EventArgs e) 
    { 
     TextWriter writer = new StreamWriter(@"C:\Users\ESTIT09\Desktop\test.txt"); 
     for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) 
     { 
      writer.WriteLine("Start of the text!"); 
      for (int j = 0; j < dataGridView1.Columns.Count; j++) 
      { 
       writer.Write("This " + dataGridView1.Rows[i].Cells[j].Value.ToString() + " is number" + "\r\n"); 
      } 

      writer.WriteLine("End of the text!"); 
     } 
     writer.WriteLine("end sub"); 
     writer.Close(); 
    } 
+0

Präfix, dann ['string.Join'] (https://Stackoverflow.com/q/3575029/1997232) + Array von Elementen, dann endet. – Sinatr

Antwort

0

Dies sollte funktionieren. Ersetzen Sie Ihre for-Schleife durch diesen Block.

for (int j = 0; j < dataGridView1.Columns.Count; j++) 
       { 
        if(j==0) //change the index (0 or 1)for what you are looking for 
        { 
         writer.Write("This " + dataGridView1.Rows[i].Cells[j].Value.ToString() + " is number" + "\r\n"); 
        } 
        else 
        { 
         writer.Write(dataGridView1.Rows[i].Cells[j].Value.ToString() + "\r\n");  
        } 
       } 
Verwandte Themen