我已经编写了代码(在 C# 中),即将使用filehelper导入 csv 文件。我面临一个问题,如果文件包含任何&mdash (-)而不是替换为 ? 字符(不准确?而是一些特殊字符,如下图所示)
我如何通过代码处理这个问题?
谢谢。
我已经编写了代码(在 C# 中),即将使用filehelper导入 csv 文件。我面临一个问题,如果文件包含任何&mdash (-)而不是替换为 ? 字符(不准确?而是一些特殊字符,如下图所示)
我如何通过代码处理这个问题?
谢谢。
您的流阅读器对象是如何创建的?您是否为其提供了任何特定的编码?如果还没有定义,我认为您应该尝试一下,因为在没有定义 BOM 时无法检测到默认编码。
来自MSDN
字符编码由 encoding 参数设置,缓冲区大小设置为 1024 字节。StreamReader 对象尝试通过查看流的前三个字节来检测编码。如果文件以适当的字节顺序标记开头,它会自动识别 UTF-8、little-endian Unicode 和 big-endian Unicode 文本。否则,使用用户提供的编码。有关详细信息,请参阅 Encoding.GetPreamble 方法。