在 CSVHelper 中设置编码

pen*_*ill 5 csvhelper

我正在尝试将编码设置为shift_jis. 我使用了Encoding.GetEncoding(932)但在写入文件时没有使用编码。

StreamWriter我在.net 文件的实例化中使用 Windows 标识符 932 设置编码值TextWriter。我看到编码值设置为shift_jis。当CsvWriter使用TextWriter对象实例化时,编码会丢失。CsvWriter上的编码值为UTF8。请参阅下面的代码,了解我如何设置这些值。

using (TextWriter textWriter = new StreamWriter(fileString, false, 
                                              Encoding.GetEncoding(932)))
{ 
   var writer = new CsvWriter(textWriter, false);
   writer.Configuration.ShouldQuote = (field, context) => false;
   writer.Configuration.Delimiter = ",";

   .. write the columns 
   .. write the rows in a foreach loop

}
Run Code Online (Sandbox Code Playgroud)

当我展开 textWriter 上的编码属性时,它设置为shift_jis

CodePage = 932
EncodingName = "Japanese (Shift-JIS)"
Run Code Online (Sandbox Code Playgroud)

当我展开编写器上的配置/编码属性时,它设置为UTF8

CodePage = 65001
EncodingName = "Unicode (UTF-8)"
Run Code Online (Sandbox Code Playgroud)

您能否指出我做错了什么,以便我可以在shift_jis.