使用纯 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"

(但这意味着,文件名中的引号不受支持......)

相关内容