【发布时间】:2021-12-08 01:22:32
【问题描述】:
我使用函数将 Datatable 转换为 CSV,并使用 File.WriteAllText 将其保存到文件中。
private static string DataTableToCSV(DataTable dtable, char seperator)
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < dtable.Columns.Count; i++)
{
sb.Append(dtable.Columns[i]);
if (i < dtable.Columns.Count - 1)
sb.Append(seperator);
}
sb.AppendLine();
foreach (DataRow dr in dtable.Rows)
{
for (int i = 0; i < dtable.Columns.Count; i++)
{
sb.Append(dr[i].ToString());
if (i < dtable.Columns.Count - 1)
{
sb.Append(seperator);
}
}
sb.AppendLine();
}
return sb.ToString();
}
好吧,代码正在运行。我的问题是,在 CSV 中,分隔符是 ';'。现在,当然,当表中的字符串包含分号时会发生错误。有没有一种优雅的方法来解决这个问题?
【问题讨论】:
标签: c# csv datatable visual-studio-2019 stringbuilder