使用 csvsimple 忽略 UTF-8 BOM?

使用 csvsimple 忽略 UTF-8 BOM?

我目前正在使用csvsimplepdfLaTeX 处理的文档中包含一些外部数据。整个项目使用 UTF-8 作为编码。原始数据保存在 Excel 2010 文件中,由于 Excel 不支持直接导出到 UTF-8 CSV,因此我必须经历一个相当繁琐的过程:

  • 导出到 CSV
  • 用记事本打开
  • 从记事本保存,更改编码

这个过程增加了物料清单到 CSV 文件 - 0xef 0xbb 0xbf。在我的 Windows 桌面上,这似乎不是问题,但 Linux 机器上的 CI 构建会因 而中断Missing \endcsname inserted.。有没有办法告诉csvsimple忽略 BOM,或者我必须在编译开始之前将其编辑掉?

有关的:Google docs 到 TeX 和 pdf shell 脚本生成一个空白的第一页,并给我一个“!LaTeX 错误:缺少 \begin{document}。”错误

答案1

当您输入文件时,您可以尝试简单地声明BOM:

\documentclass[]{book}
\usepackage[utf8]{inputenc}
\DeclareUnicodeCharacter{FEFF}{}
\begin{document}
\input{test-with-bom}
\end{document}

相关内容