我想从csv
文件中读取:
\documentclass{article}
\usepackage{csvsimple}
\begin{document}
\csvautotabular{initial.csv}
\end{document}
现在我的initial.csv
文件如下所示:
a, # b
1, 3
它会产生以下错误:
Illegal parameter number in definition of \csv@col@body \csvautotabular{initial.csv}
Illegal parameter number in definition of \csv@temp \csvautotabular{initial.csv}
You can't use `macro parameter character #' in restricted horizontal mode \csvautotabular{initial.csv}
然后我尝试用 替换#
。\#
结果如下:
Missing \endcsname inserted \csvautotabular{initial.csv}
Extra \endcsname \csvautotabular{initial.csv}
File ended while scanning use of \pgfkeys@temp
csv
如果我的文件包含一些#
's,我应该如何尝试?
答案1
正如 @wipet 所写,问题在于#
标志的 catcode。使用最新版本1.12 (2014/07/14)
的csvsimple
,您可以使用#
以下选项来中和标志respect sharp
:
\documentclass{article}
\usepackage{csvsimple}
\begin{document}
\csvautotabular[respect sharp]{initial.csv}
\end{document}
还有一些respect xy
选项可能对其他用例也很有趣,例如respect and
(for &
) 和respect dollar
(for $
)。