データには改行文字が含まれているため、エクスポートされたデータに改行が追加され、レコードが増加するたびに、データには「、」で区切られた値も含まれます。私が実装したのはこのソリューションです
StringBuilder sb = new StringBuilder();
for (int k = 0; k < dt.Columns.Count; k++)
{
//add separator
sb.Append(dt.Columns[k].ColumnName + ',');
}
//append new line
sb.Append("\r\n");
for (int i = 0; i < dt.Rows.Count; i++)
{
//string[] fields = dt.Rows[i].ItemArray.Select(field => field.ToString()).
// ToArray();
//sb.AppendLine(string.Join(",", fields));
//for (int k = 0; k < dt.Columns.Count; k++)
//{
var fields = dt.Rows[i].ItemArray.Select(field => field.ToString().WrapInQuotesIfContains(","));
sb.AppendLine(string.Join(",", fields));
//add separator
//sb.Append(dt.Rows[i][k].ToString() + ';');
//}
//append new line
//sb.Append("\r\n");`enter code here`
}