(LaTeX中的数据工具)DTLforeach:Can';t分配XXX在XXX中没有键吗?
我是LaTeX的初学者,目前正在尝试从文本文件创建表(出于某种原因,数据是从其他程序生成的,并以.txt文件编写) 下面是一个文本文件:(刚刚将其集成到latex中) 我尝试使用package的DTLforeach生成一个latex表,它使用:(LaTeX中的数据工具)DTLforeach:Can';t分配XXX在XXX中没有键吗?,latex,Latex,我是LaTeX的初学者,目前正在尝试从文本文件创建表(出于某种原因,数据是从其他程序生成的,并以.txt文件编写) 下面是一个文本文件:(刚刚将其集成到latex中) 我尝试使用package的DTLforeach生成一个latex表,它使用: \DTLsetseparator{ } \DTLloaddb[ keys={zeit,am1,am2,am3,am4} ]{d11db}{d11.csv} .... Some other texts... \begin{tab
\DTLsetseparator{ }
\DTLloaddb[
keys={zeit,am1,am2,am3,am4}
]{d11db}{d11.csv}
.... Some other texts...
\begin{tabular}{|c|c|c|c|c|}
\bfseries Zeit/s &
\bfseries AMES\_13 &
\bfseries AMES\_14 &
\bfseries AMES\_15 &
\bfseries AMES\_16 \\\hline
\DTLforeach{d11db}{\zeit=zeit,\am1=am1,\am2=am2,\am3=am3,\am4=am4
}{%
\zeit & \am1 & \am2 & \am3 & \am4 \\\hline
}
\end{tabular}
当我试图编译它时,LaTeX(或pdflatex)只是向我显示错误:
Package datatool Error: Can't assign \am4 : there is no key `am4 ' in data base `d11db'.
如果我删除\am4=am4,则表明am3不存在。。。有人能告诉我如何解决这个错误吗?Thx(和sry表示我的蹩脚英语)键
选项指定您在CSV中使用的实际标题名称。以下是(从外部ASCII文件加载数据库部分5.2)的摘录:
键
这是一个以逗号分隔的要使用的键列表,其中的键是
按与列相同的顺序列出。如果文件有头,
这些键将覆盖标题行中给定的值。如果
文件没有标题行,并且
中没有提供键,则
键将由\dtldefaultkey
给出,其中
是
\dtldefaultkey
列号和\dtldefaultkey
默认为“列”。
请注意,键列表必须用大括号分隔,因为它们
包含逗号
因此,我的建议是使用:
\begin{filecontents*}{d11.csv}
zeit,am1,am2,am3,am4
3,0 000 8,760V 0,000 0,216mA
...
\end{filecontents*}
\DTLloaddb[
keys={zeit,am1,am2,am3,am4},
headers={Zeit/s,AMES\_13,AMES\_14,AMES\_15,AMES\_16}
]{d11db}{d11.csv}
注意标题的使用
键:
标题
这是一个以逗号分隔的标题列表。如果未提供,则
标题将与标题行或键中给出的标题相同
如果没有标题行。请注意,标题列表必须是
由大括号分隔,因为它们包含逗号
\begin{filecontents*}{d11.csv}
zeit,am1,am2,am3,am4
3,0 000 8,760V 0,000 0,216mA
...
\end{filecontents*}
\DTLloaddb[
keys={zeit,am1,am2,am3,am4},
headers={Zeit/s,AMES\_13,AMES\_14,AMES\_15,AMES\_16}
]{d11db}{d11.csv}