loadfile
ファイルからLuaコードを読み込み、チャンクを返す
lua
loadfile ([filename [, mode [, env]]])説明
load 関数と同様に、指定したファイル filename から Lua コードを読み込み、コンパイルされたチャンクを返します。filename を省略すると、標準入力(stdin)からコードを読み込みます。
サンプルコード
lua
local f = loadfile("test.lua")
f()この例では、test.luaが読み込まれ、実行されます。
LuaJIT独自の拡張
LuaJITではUTF-8エンコーディングのソースコードを処理できるように拡張されています。
また引数modeでモードパラメータを指定することで、チャンクが「テキストチャンク」または「バイナリチャンク」として処理されるかを制御できます。モードパラメータの詳細は以下の通りです。
- "t": テキストチャンクのみを許可します
- "b": バイナリチャンクのみを許可します
- "bt": テキストとバイナリの両方を許可します(デフォルト)
拡張版のサンプルコード
lua
local f = loadfile("test.lua", "t") -- "t" モードでテキストチャンクとして処理
print(f()) -- 出力: こんにちは、ファイル!この例では、UTF-8文字列を含むtest.luaファイルをloadfileで読み込み、テキストチャンクとして実行します。
互換性
- Lua5.2
- LuaJIT独自の拡張あり