プレーンなTeXコマンドを使用したファイルI/O

プレーンなTeXコマンドを使用したファイルI/O

Knuth の 216 ページに従っていましたが、次のコードを実行できません。エラー メッセージは次のとおりです。

! Emergency stop.
<read 1> 

l.12 \read\fid to\temp

*** (cannot \read from terminal in nonstop modes)

\openinログ ファイルではまったく見つからないことを述べておきます。

\begin{filecontents}{address.txt}
test
\end{filecontents}
%
\documentclass{article}
\tracingmacros=1
\newread\fid
\begin{document}
\the\fid

\openin\fid={address.txt}
\read\fid to\temp
\closein\fid
\temp
\end{document}

答え1

中括弧の構文は

\openin\fid={address.txt}

LuaTeX でのみサポートされています。他の TeX エンジンの構文:

\openin\fid=address.txt

ファイル名はスペースまたは . で終わることができます\relax。ファイル名内のスペースは、引用符で囲むことでサポートされる場合もあります。

\openin\fid="address.txt"

(ただし、ファイル名内の引用符はサポートされていないことを意味します...)

関連情報