LuaFileSystem 库
lfs库来自这里, 目前支持Windows、Linux、MacOSX、FreeBSD等.
lfs主要用作Lua对文件系统操作方法缺失的一种补充.
API
导入
导入方式: local lfs = require "lfs"
lfs.dir(path)
作用: 列出path
目录下的所有文件、文件夹.
此方法返回值为一个可迭代当数组, 可以使用for filename in lfs.dir("script") do print(filename) end
来进行测试
lfs.mkdir(dir)
作用: 创建一个文件夹
此方法返回: ok
, err
; ok
为true
表示创建成功, 否则err
为失败原因.
lfs.rmdir(dir)
作用: 删除文件夹
此方法返回: ok
, err
; ok
为true
表示删除成功, 否则err
为失败原因.
lfs.chdir(dir)
作用: 用于改变当前工作目录.
此方法返回一个boolean
类型返回值来表示是否切换成功, 第二个返回值为失败原因.
lfs.currentdir()
作用: 列出当前完整路径.
此方法返回一个字符串类型的返回值来表示当前路径.
lfs.attributes(file/dir)
作用: 查看文件或文件夹属性
此方法返回一个table
类型的返回值, 里面有stat
方法所能读取到的所有属性.
lfs.link(old, new, [, mode])
作用: 创建一个link.
此方法返回: ok
, err
; ok
为true
表示删除成功, 否则err
为失败原因.
lfs.setmode(old, new, [, mode])
作用: 设置文件模式(binary/text).
此方法返回: ok
, err
; ok
为true
表示删除成功, 否则err
为失败原因.
最后
其它一些不常用的方法这里不做介绍, 有兴趣可以参考lfs库的官方介绍.
lfs库是
同步IO
操作, 不建议在NFS
等网络文件系统场景下使用.