1

我无法控制我们的一些客户保存文件的编码,当它是 ASCII 时,文件可能缺少然后显示“�”的字符。读取文件后,如何删除这些字符“�”?

我正在阅读带有以下行的文件,但对于每一列,我想用 C# .NET 中的空格替换该字符。

   using (var parser = new TextFieldParser("", Encoding.UTF8))
4

1 回答 1

0

看起来您可以使用自定义错误替换创建 UTF-8 :Encoding

var encoding = Encoding.GetEncoding(
    "UTF-8",
    null,
    new DecoderReplacementFallback(string.Empty));

using (var parser = new TextFieldParser("", encoding)) {
    ⋮
}

我不知道是否允许编码器后备null。如果没有,请替换它new EncoderReplacementFallback(string.Empty)

于 2017-09-17T03:41:09.810 回答