我有一个简单的表格:
\documentclass{article}
\pagestyle{empty}
\begin{document}
\begin{table}[ht]
\centering
\begin{tabular}{c c}
\hline\hline
x & y \\ [0.5ex]
\hline
1 & 4 \\
2 & 6 \\
3 & 8 \\
[1ex]
\hline
\end{tabular}
\end{table}
\end{document}
它看起来像这样:
我想复制这个datatool
,保持相同的水平线和垂直空间:
\documentclass{article}
\usepackage{datatool}
\usepackage{filecontents}
\pagestyle{empty}
\begin{filecontents*}{input.csv}
x,y
1,4
2,6
3,8
\end{filecontents*}
\begin{document}
\DTLloaddb{mytable}{input.csv}
\begin{table}[ht]
\centering
\begin{tabular}{c c}
\hline\hline
x & y \\ [0.5ex]
\hline
\DTLforeach{mytable}
{\x=x,\y=y}
{
\DTLiffirstrow{}{\\}
\x & \y
}
\\
[1ex]
\hline
\end{tabular}
\end{table}
\end{document}
这是几乎相同,但1
水平方向未对齐:
我该如何解决?
答案1
发现不同之处:
\begin{filecontents*}{\jobname.csv}
x,y
1,4
2,6
3,8
\end{filecontents*}
\documentclass{article}
\usepackage{datatool}
\begin{document}
\DTLloaddb{mytable}{\jobname.csv}
\begin{table}[ht]
\centering
\begin{tabular}{c c}
\hline\hline
x & y \\ [0.5ex]
\hline
\DTLforeach{mytable}
{\x=x,\y=y}
{%
\DTLiffirstrow{}{\\}%
\x & \y
}
\\[1ex]
\hline
\end{tabular}
\end{table}
\end{document}
不, 的位置filecontents
和文件名无关。查找%
。
您在行尾添加了两个空格;第一个空格实际上并不相关,因为 LaTeX 会忽略它,但后面的空格\DTLiffirstrow{}{\\}
不会被忽略。