![如何 \input{} 包含 unicode 字符的 tex 文件](https://linux22.com/image/429193/%E5%A6%82%E4%BD%95%20%5Cinput%7B%7D%20%E5%8C%85%E5%90%AB%20unicode%20%E5%AD%97%E7%AC%A6%E7%9A%84%20tex%20%E6%96%87%E4%BB%B6.png)
我有一个包含 Unicode 字符“±”的大表。如果我将此表放在我的主要 tex 文件中,则不会出现问题。但是当我将其放在另一个 tex 文件中并尝试 \input{} 它时,我收到了错误:
包 inputenc 错误:无效的 UTF-8 字节“B1. 大豆 & 0.393\newline{}�
希望有人能帮忙解决这个问题。
谢谢
答案1
几乎可以肯定,您输入的文件是以编码 iso-859-1 (latin-1) 保存的,而不是 Unicode UTF-8 编码。在 latin-1 中,± 是单个字节 B1,如果您尝试将文件解码为 utf-8(其中 ± 是两个字节 C2 B1),pdflatex 将给出您所述的错误
这与无关\input
,它工作的文件要么是旧的乳胶版本(默认情况下不假设 UTF-8),要么必须\usepackage[latin1]{inputenc}
告诉 LaTeX 使用拉丁语 1。
因此,要么使用编辑器将文件保存为 UTF-8,要么通过inputenc
上述加载告诉 LaTeX 使用 latin-1。