使用带有 catchfile 的多个文件在表中插入数据时出现问题

使用带有 catchfile 的多个文件在表中插入数据时出现问题

我有来自不同文件的多个数据,我想在环境主体中使用它们tabular。我看到了一个解决方案这里,但该方法仅适用于一个这样的文件。

如果做了以下事情

\documentclass{article}
\usepackage{catchfile}

\CatchFileDef{\mytable1}{table1.tex}{}
\CatchFileDef{\mytable2}{table2.tex}{}

\begin{document}

\begin{tabular}{|c|c|} 
  \mytable1
  \mytable2
\end{tabular}

\end{document}

它抱怨Use of \f doesn't match its definition.

table1.tex&table2.tex格式如下

 a & b \\
  \hline
  c & d \\
  \hline

如果仅使用一个这样的表定义,它就可以正常工作。

答案1

你可以试试这个

\documentclass{article}
\usepackage{catchfile}


\CatchFileDef{\mytablei}{table1.tex}{}
\CatchFileDef{\mytableii}{table2.tex}{}

\newcommand\mytable[1]{\csname mytable\romannumeral#1\endcsname}

\begin{document}

\begin{tabular}{|c|c|} 
  \mytable1
  \mytable2
\end{tabular}

\end{document}

核心问题是 TeX 不(先验地)接受宏名称中的数字。(我的意思是,没有特殊设置)。

相关内容