我必须使用许多写入命令来写入临时文件,如下所示
\newwrite\tempfile
\immediate\openout\tempfile=tempt.txt
\immediate\write\tempfile{data 1}
\immediate\write\tempfile{data 2}
\immediate\write\tempfile{data 3}
\immediate\write\tempfile{data 4}
\immediate\closeout\tempfile
输出
数据 1
数据2
数据 3
数据4
如何仍然使用多次写入但结果仅在一行上
数据 1 数据 2 数据 3 数据 4
我不想用\immediate\write\tempfile{data 1 data 2 data 3 data 4}
。
谢谢。
答案1
A\write
总是会添加一个换行符,但是您总是可以收集标记并将它们全部写在一起。
例如这个纯文本\mywrite{aaa}
并\mywrite{bbb}
生成一个文件aaabbb
\newwrite\zz
\newtoks\zzz
\def\mywrite#1{\zzz\expandafter{\the\zzz#1}}
\mywrite{aaa}
\mywrite{bbb}
\immediate\openout\zz=\jobname.zz
\immediate\write\zz{\the\zzz}
\immediate\closeout\zz
\bye