我正在尝试将编码设置为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 …Run Code Online (Sandbox Code Playgroud) csvhelper ×1