文件操作

作者:闫国梁 最后更新时间:2020年7月6日 ## 文件系统操作

模块具有64Mb的flash空间,除了模块自身程序占用以外还剩余了一部分空间可供用户使用,AT和LUAT均支持进行操作。

LUAT方式

luat的文件操作来自标准lua的io库直接按照标准语法使用即可。

除了标准语法,luat提供了几个更方便的文件操作接口可以使用。 ### io.exists(path)

判断文件是否存在

  • 参数

传入值类型

释义

string

path,文件全名例如:“/ldata/call.mp3”

  • 返回值

boole,存在为true,不存在为false

  • 例子

local ex = io.exists("/ldata/call.mp3")

io.readFile(path)

读取文件并返回文件的内容

  • 参数

传入值类型

释义

string

path,文件全名例如:“/ldata/call.txt”

  • 返回值

string,文件的内容,文件不存在返回nil

  • 例子

local c = io.readFile("/ldata/call.txt")

io.writeFile(path, content, mode)

写入文件指定的内容,默认为覆盖二进制模式

  • 参数

传入值类型

释义

string

path,文件全名例如:“/ldata/call.txt”

string

content,文件内容

string

mode,文件写入模式默认“w+b”

  • 返回值

string,文件的内容

  • 例子

local c = io.writeFile("/ldata/call.txt","test")

io.pathInfo(path)

将文件路径分解为table信息

  • 参数

传入值类型

释义

string

path,文件路径全名例如:“/ldata/call.txt”

  • 返回值

table,{dirname=“/ldata/”,filename=“call.txt”,basename=“call”,extname=“.txt”}

  • 例子

loca p = io.pathInfo("/ldata/call.txt")

io.fileSize(path)

返回文件大小

  • 参数

传入值类型

释义

string

path,文件路径全名例如:“/ldata/call.txt”,“test”

  • 返回值

number ,文件大小

  • 例子

locan cnt = io.fileSize("/ldata/call.txt")

io.readStream(path, offset, len)

返回指定位置读取的字符串

  • 参数

传入值类型

释义

string

path,文件路径全名例如:“/ldata/call.txt”

number

offset,要读取的指定位置

number

len,要读取的字节数

  • 返回值

string,返回要读取的数据,读取失败返回nil

  • 例子