この初版は Lua 5.0 用に書かれました. 後のバージョンでは依然として大部分が関連していますが、相違点がいくつかあります.
第 4 版は Lua 5.3 を対象に、Amazon とその他の書店で購入できます.
書籍を購入することで、Lua プロジェクトをサポートすることにもなります.
![]() |
Lua によるプログラミング | ![]() |
第 III 部: 標準ライブラリ 第 21 章: I/O ライブラリ |
tmpfile
関数は読み書きモードで開かれた一時ファイルのハンドルを返します. このファイルはプログラムが終了すると自動的に削除されます. flush
関数は未処理のすべての書き込みをファイルに対して実行します. write
関数と同様に、関数として呼び出す (io.flush()
)、現在の出力ファイルをフラッシュしたり、メソッドとして呼び出す (f:flush()
) ことによってファイル f
をフラッシュすることができます.
seek
関数はファイルの現在の位置を取得および設定するために使用できます. その一般的な形式は filehandle:seek(whence, offset)
です. whence
パラメータはオフセットの解釈方法を指定する文字列です. 有効な値は、オフセットがファイルの先頭から解釈されるときの "set"、オフセットがファイルの現在の位置から解釈されるときの "cur"、オフセットがファイルの末尾から解釈されるときの "end" です. whence
の値に関係なく、呼び出しはファイルの現在の位置をファイルの先頭からのバイト数で測定して返します.
whence
の既定値は "cur"、offset
の既定値はゼロです. そのため、file:seek()
の呼び出しはファイルの現在の位置を返しますが、変更はしません. file:seek("set")
の呼び出しは、位置をファイルの先頭に戻し (0 を返します). file:seek("end")
の呼び出しは、位置をファイルの末尾に設定し、そのサイズを返します. 次の関数は現在の位置を変更せずにファイルのサイズを取得します.
function fsize (file) local current = file:seek() -- get current position local size = file:seek("end") -- get file size file:seek("set", current) -- restore position return size end
前のすべての関数は、エラーが発生した場合に nil とエラーメッセージを返します.
著作権 © 2003–2004 Roberto Ierusalimschy. すべての権利を予約します. | ![]() |