以前遇到什么问题在CSDN上基本上都能找到答案,觉得这里头大神贼多。今天,我这个菜鸟也终于鼓起勇气,决定开始写博客了,人生中的第一次CSDN博客啊!对我来说是一个多么具有里程碑的时刻啊!所以,必须要多说几句话以示留念。
由于在工作中用到Lua+OpenWrt,但是我对这两个东西完全不了解,刚开始一直处于完全懵逼的状态,经过一段时间的摸索后,终于发现了一些门道。这里主要写的是Lua中与文件读写有关的内容,我贴图的主要原因是想强调每个函数执行之后的返回值!返回值!返回值!为了能具象的看见返回值!因为这些返回值经常用来做if判断的条件,而lua的判断又灵活,数字字母布尔值一切非nil的值都为true。
1.io.open(file_path,"r/w")
- 作用:打开一个文件(要指明文件的路径、打开的模式)
- 参数:
2)"r/w":文件的打开模式,"r"-打开文件+读取文件内容,"w"-打开文件+写内容到文件(注:r-read,w-write,这很好理解,这俩单词使用频率很高)
- 返回值:文件及其的描述,"文件及其的描述"究竟是什么,看下面的代码和图,很直观
--以只读模式打开文件
local flag_isfile = io.open(file_path,"r")
--将返回值打印出来
print("io.open(file_path,".."r"..")--->"..tostring(flag_isfile))
2.file:read("*a")
- 作用:读取文件的内容
- 参数:"*a"-读取全部,默认只读取一行
- 返回值:读取的内容
print("begin to read file ... ...")
--read(),默认状态,只读一行
print("默认状态,只读一行\n"..tostring(flag_isfile:read()).."\n")
--read("*a"),读全部
print("*a,".."读全部\n"..tostring(flag_isfile:read("*a")))
3.require"nixio"
- 作用:导入Lua函数库,因为要用到里面的函数(这里是Lua的API,有需要同学可以的去看看点击打开链接)
nixio.fs.acess(path)
- 作用:判断path路径下的文件是否可访问
- 参数:path-待访问的文件路径
- 返回值:true or nil
--导入nixio require"nixio" --待访问的文件的路径 local file_path = "/etc/easy-rsa/msg.lua" --nixio.fs.access() local exe_result_access = nixio.fs.access(file_path) --打印返回值 print("nixio.fs.access()的返回值-->"..tostring(exe_result_access))
4.补充:关于nixio.fs.access()
以下两张图是API的截图,看完之后会对加深对一些概念性东西的理解
(好了,时间不早了,吃饭去咯
)

