簡體   English   中英

將DataGridView導出為CSV文本文件

[英]Exporting DataGridView to a CSV text file

我編寫了以下代碼,但它不起作用(它在我的CSV文件中保存了愚蠢的東西)。 有什么不對? 我的DataGridView中有兩列。

var strValue = new StringBuilder();

foreach(DataGridViewRow row in dataGridView1.Rows)
{
    strValue.AppendLine(row.Cells[0] + "," + row.Cells[1]);
}

string strFile = Properties.Settings.Default.AutoCompleteFile; //File Path

if (!string.IsNullOrEmpty(strValue.ToString()))
{
    File.WriteAllText(strFile, strValue.ToString(), Encoding.UTF8);
}

這是我在保存的文件中得到的結果:

DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 0},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 0} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 1},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 1} DataGridViewTextBoxCell {ColumnIndex = 0 ,RowIndex = 2},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 2} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 3},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 3} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 4},DataGridViewTextBoxCell { ColumnIndex = 1,RowIndex = 4} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 5},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 5} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 6},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 6} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 7},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 7} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 8},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 8} DataGridViewTextBoxCel l {ColumnIndex = 0,RowIndex = 9},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 9} DataGridViewTextBoxCell {ColumnIndex = 0,RowIndex = 10},DataGridViewTextBoxCell {ColumnIndex = 1,RowIndex = 10}

當你這樣稱呼時:

strValue.AppendLine(row.Cells[0] + "," + row.Cells[1]);

.Net正在對每個單元格進行“ToString”,而不是它們的值。 這是row.Cells[x]的類型: http//msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewcell.aspx

使用Value屬性可能會解決您的問題:

strValue.AppendLine(row.Cells[0].Value + "," + row.Cells[1].Value);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM