J'écris un programme et je suis bloqué. Je voulais être capable d'éditer une grille de données avec un programme ouvert et cliquer sur un bouton pour enregistrer et mettre à jour le fichier CSV qui contient le DataGrid.Exporter GridView Vers un fichier CSV en utilisant streamwritter
Je sais que cela est possible, mais besoin d'aide comment obtenir ce travail avec mon code:
private void GridView(List<string[]> parsedData)
{
dataGridView1.Rows.Clear();
dataGridView1.ColumnCount = 2;
for (int i = 0; i < 2; i++)
{
var sb = new StringBuilder(parsedData[0][i]);
sb.Replace('_', ' ');
sb.Replace("\"", "");
dataGridView1.Columns[i].Name = sb.ToString();
}
foreach (string[] row in parsedData)
{
dataGridView1.Rows.Add(row);
}
dataGridView1.Rows.Remove(dataGridView1.Rows[0]);
}
private void button1_Click(object sender, EventArgs e)
{
List<string[]> parsedData = read(@"c:\users\dick\documents\visual studio 2010\Projects\WindowsFormsApplication2\WindowsFormsApplication2\file.csv", ',');
GridView(parsedData);
}
private void button3_Click(object sender, EventArgs e)
{
List<string[]> parsedData = read(@"c:\users\dick\documents\visual studio 2010\Projects\WindowsFormsApplication2\WindowsFormsApplication2\Alteredfile.csv", ';');
GridView(parsedData);
}
private void button2_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
for (int k = 0; k < dataGridView1.Columns.Count; k++)
{
sb.Append(dataGridView1.Columns[k].HeaderText + ',');
}
sb.Append("\r\n");
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
for (int K = 0; K < dataGridView1.Columns.Count; K++)
{
sb.Append(dataGridView1.Rows[i].Cells[K].ErrorText + ',');
}
sb.Append("\r\n");
}
using (var sw = new StreamWriter(@"c:\users\dick\documents\visual studio 2010\Projects\WindowsFormsApplication2\WindowsFormsApplication2\Alteredfile.csv"))
{
sw.WriteLine(sb.ToString());
}
}}
}