【发布时间】:2016-10-09 18:11:59
【问题描述】:
我编写了这段代码,用于从DataGridView 导出CSV 文件:
var dialog = new SaveFileDialog { Filter = @"Csv File|*.csv" };
var result = dialog.ShowDialog();
if (result != DialogResult.OK)
return;
var builder = new StringBuilder();
var rowcount = dgvSum.Rows.Count;
var columncount = dgvSum.Columns.Count;
var headerCols = new List<string>();
for (var j = 0; j < columncount - 1; j++)
{
headerCols.Add(dgvSum.Columns[j].HeaderText);
}
builder.AppendLine(string.Join(";", headerCols.ToArray()));
for (var i = 0; i < rowcount - 1; i++)
{
var cols = new List<string>();
for (var j = 0; j < columncount - 1; j++)
{
cols.Add(dgvSum.Rows[i].Cells[j].Value.ToString());
}
builder.AppendLine(string.Join(",", cols.ToArray()));
}
File.WriteAllText(dialog.FileName, builder.ToString());
MessageBox.Show(@"Csv file was created.");
但是,我想在我创建的文件中显示 Unicode 字符。如何转换为UTF-8?
【问题讨论】:
-
有人帮帮我吗???
-
您已经在用 UTF8 编写它。不清楚您的问题是什么,请提供minimal reproducible example 来证明您的问题。
-
我使用波斯语字符。但它给了我一个不清楚的文件
-
我会在你把它写入文件之前检查你的字符串,我怀疑在你写之前它是错误的。
-
那么现在我能做些什么来修复它
标签: c# csv unicode utf-8 datagridview