Mathematica 中的 feff 字符

在 Mathematica 中导入 CSV 文件时,开头出现 \:feff 字符串。使用 ToExpression 处理时会出现转换问题。

简单查找了下,发现是因为直接使用 excel 创建 csv 文件时(UTF8 编码),文件头部被添加了一个不可见字符 BOM (Byte Order Mark) 。该字符用于 Unicode 标识内部编码的排列方式,在 UTF-16、UTF-32 编码里是必须的,而在 UTF-8 里是可选的。有的语法解析器没有对 BOM 做处理。

明确原因后,直接用 vscode 打开瞧一瞧

果然,UTF-8 with BOM

直接换成 UTF-8 编码保存。问题解决。

参考链接: linux 下各种编码问题 ——UTF-8、BOM、的问题