lua 範例 Lua讀寫檔案範例

2021-10-13 08:33:25 字數 1457 閱讀 9568

檔案讀寫

檔案讀寫對製作遊戲很有幫助。可以呼叫別的檔案中的**,儲存最高分、遊戲存檔、玩家狀態等信寫到檔案中。

首先,讓我們看乙個簡單的命令:dofile。這個命令會讀入另乙個檔案的**並立即執行。

**:dofile("./test.lua")

很簡單的命令。注意 ./ 是指根目錄,不是子目錄。如果是子目錄,應該這樣用:

**:dofile("./files/test.lua")

那麼,如果我們的檔案 test.lua 包含下述**:

**:playerx = 10 playery = 20 enemyx = 40 enemyy = 50

一旦我們用 dofile 呼叫這個檔案,這些變數將立即得到宣告。檔案不是非得用 lua 字尾,txt 或其他字尾都可以。

從檔案中讀取一行:

假設你有乙個很多行文字的檔案,你想從中讀取一行,並列印到螢幕上。為此我們可以使用 io.open() 命令開啟檔案並讀取。

引用:r - 讀取模式w - 寫入模式(覆蓋現有內容)

a - 附加模式(附加在現有內容之後)

b - 二進位制模式

r+ - 讀取更新模式(現有資料保留)

w+ - 寫入更新模式(現有資料擦除)

a+ - 附加更新模式(現有資料保留,只在檔案末尾附加)

第一件要做的事情就是開啟檔案並存為乙個變數。看下面。

**:file = io.open("testread.txt", "r")

現在我們的檔案 testread.txt 已開啟並處於讀取模式。接著我們使用 read() 命令讀取檔案中的單行內容存為另乙個變數。

**:ourline = file:read()

請注意,此命令前的 file 是我們之前開啟檔案並儲存的變數名,你可以使用任何其他名字。file.read() 還可以使用下列任乙個引數,只要用引號括起來放入括號裡就可以。

引用:*n - 讀取乙個數字並返回它。例:file.read("*n")

*a - 從當前位置讀取整個檔案。例:file.read("*a")

number - 返回乙個指定字元個數的字串,或在 eof 時返回 nil。例:file.read(5)

既然我們已經讀取到所要的那一行,我們需要關閉開啟的檔案,像這樣:

**:file:close()

現在要列印我們的檔案至螢幕我們只要這麼做:

**:screen:print(10,10,ourline,white)

讀取所有行

要讀取乙個檔案的所有行,你可以在乙個 for 語句中使用上述技巧。請看下述**:

**:y = 10

file = io.open("testread.txt","r")

for line in file:lines() do

y = y + 10

screen:print(100,y,line,white)

endf

ile:close()

lua 範例 Lua 運算子

lua 運算子 運算子是乙個特殊的符號,用於告訴直譯器執行特定的數學或邏輯運算。lua提供了以下幾種運算子型別 算術運算子 關係運算子 邏輯運算子 其他運算子 算術運算子 下表列出了 lua 語言中的常用算術運算子,設定 a 的值為10,b 的值為 20 操作符描述例項 加法a b 輸出結果 30 ...

java讀寫檔案範例

public class readfromfile system.out.println ins.close catch ioexception e catch filenotfoundexception e try ins.close catch ioexception e catch filen...

lua 讀寫檔案

i o庫為檔案操作提供2個里乙個輸入庫和乙個輸出庫io.read io.write 該函式將所有引數按照順序寫到當前輸出檔案中 file name c 1.txt file name2 function write io.write hello world end write io.read 讀取當...