【问题标题】:Csvhelper how to create custom Headers with Localization?Csvhelper 如何使用本地化创建自定义标头?
【发布时间】:2018-07-28 00:01:21
【问题描述】:

我正在尝试创建一个带有标题的 csv,该标题将用于多种语言。这是我正在使用的当前代码,适用于英语,但不适用于日语。

最好的方法是什么?我应该指定文化信息吗?我试过了,但效果不好。

谢谢。

    private byte[] WriteCsvToMemory(IEnumerable records)
    {
        using (var memoryStream = new MemoryStream())
        using (var streamWriter = new StreamWriter(memoryStream, Encoding.UTF8))
        using (var csvWriter = new CsvWriter(streamWriter))
        {
            csvWriter.WriteField(GetResourceFileValue("ja-jp", "KEY")); 
            csvWriter.NextRecord();
            csvWriter.Configuration.HasHeaderRecord = false;
            csvWriter.WriteRecords(records);
            streamWriter.Flush();
            return memoryStream.ToArray();
        }
    }

【问题讨论】:

  • 你能描述一下具体发生了什么吗? “不好的结果”并不具体。是否抛出异常?表头根本就没有写吗?
  • 没有错误,只是不显示日文字符。适用于英语和西班牙语,没有任何问题。
  • 什么不显示日文字符?这里没有显示任何内容的代码。
  • 在标题部分使用此代码创建的 .csv 文件不添加 UNICODE 字符。我正在使用 API,因此下一段代码是返回 HttpResponseMessage 以及该函数中的内容。

标签: c# csv csvhelper


【解决方案1】:

我的代码出错了,解决方法很简单:

    using (var streamWriter = new StreamWriter(memoryStream, **Encoding.UTF8** ))

图书馆没有问题。

【讨论】:

    猜你喜欢
    • 2019-10-02
    • 1970-01-01
    • 2020-11-22
    • 2020-09-28
    • 1970-01-01
    • 1970-01-01
    • 2019-11-28
    • 2011-05-01
    • 1970-01-01
    相关资源
    最近更新 更多