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":从当前位置,读取接下来的所有内容,如果在文件结尾处,返回一个空字符串;
"l":读取下一行内容,不包括换行符,文件结尾处返回nil,默认读取方式;
"L":读取下一行内容,包括换行符(如果存在),文件结尾处返回nil
number:读取指定字节数的字符串,在文件结尾处返回nil,如果number为0,不读取直接返回空字符串。
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 string end
--字符串写入 function writeFile(file_name,string) local f = assert(io.open(file_name, 'w')) f:write(string) f:close() end
原文:http://blog.csdn.net/xufeng0991/article/details/38453499