
一時ファイルに書き込むには、次のように多くの書き込みコマンドを使用する必要があります。
\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行にまとめる方法
データ 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