標籤:lua 遊戲 設定檔
lua中檔案讀寫經常在遊戲配置中用到,比如用戶端的音效音樂開關等。
Lua官方API文檔:點這裡
I/O庫為檔案操作提供4個主要函數:io.open(),io.read(),io.write和io.close()。
io.open(檔案路徑,開啟檔案):以指定方式開啟一個檔案,開啟成功返回一個檔案控制代碼,失敗返回nil和錯誤描述。
可以傳入以下六種開啟檔案:
“r”:讀模式(預設);
“w”:寫入模式;
“a”:附加模式;
“r+”:更新模式,所有以前的資料保留;
“w+”:更新模式,所有以前的資料擦除;
“a+”:添加更新模式,以前的資料儲存下來,寫作是只允許在檔案的末尾。
io.read(讀取方式):根據指定方式讀取檔案,返回讀到的字串或數字,或者nil。
可以有五種去讀方式:
“*n”:讀取一個數字,這個唯一返回值是數字而不是字串的;
"*a":從當前位置,讀取接下來的所有內容,如果在檔案結尾處,返回一個Null 字元串;
"l":讀取下一行內容,不包括分行符號,檔案結尾處返回nil,預設讀取方式;
"L":讀取下一行內容,包括分行符號(如果存在),檔案結尾處返回nil
number:讀取指定位元組數的字串,在檔案結尾處返回nil,如果number為0,不讀取直接返回Null 字元串。
io.write()
寫入每一個參數的值到檔案,參數必須為字串或者數字。寫入成功返回這個檔案,失敗返回nil和錯誤描述。
無參。
io.close()
關閉開啟的檔案,無參。
執行個體:
--讀取指定檔案function getFile(file_name) local f = assert(io.open(file_name, 'r')) local string = f:read("*all") f:close() return stringend
--字串寫入function writeFile(file_name,string) local f = assert(io.open(file_name, 'w')) f:write(string) f:close()end