0

我有一个用于将数据表转换为 csv 的 C# 代码。我的代码是

foreach (DataRow row in dt.Rows)
    {
        IEnumerable<string> fields = row.ItemArray.Select(field => field.ToString());
        foreach (var item in fields)
        {
            sb.AppendFormat("\"{0}\",", item.Replace("\"", "\"\""));
        }
        sb = sb.Remove(sb.Length - 1, 1);
        sb.Append("\n");

    }

    string attachment = "attachment; filename=mycsvfile.csv";
    Response.ClearContent();
    Response.AddHeader("content-disposition", attachment);
    Response.ContentType = "application/csv";

    Response.Write(sb.ToString());
    Response.End();

有人知道如何将 csv 更改为 utf-8 吗?

4

1 回答 1

0

我不知道你到底在做什么,但是有一个名为的类System.Text.Encoding有一个static property被调用的UTF8。使用它,您可以将字符串编码为UTF-8

System.Text.Encoder utf8enc = System.Text.Encoding.UTF8.GetEncoder();

编码器提供了对文本进行编码的方法。System.Text.Decoder-class也是如此。

请参阅MSDN以供参考。

于 2013-03-25T08:22:48.390 回答