Liệt kê các tệp trong thư mục (file.list)
Khai báo
list, err = file.list(path [, deep])
Tham số
- path
Kiểu chuỗi. Đường dẫn tuyệt đối của thư mục. - deep (từ phiên bản 20250313)
Kiểu boolean, không bắt buộc. Cho biết có trả về đệ quy đường dẫn đầy đủ của các tệp trong thư mục con hay không. Mặc định: false.
Giá trị trả về
- list
Kiểu mảng hoặc nil. Trả về nil nếu đường dẫn không tồn tại hoặc là một tệp; nếu không, trả về mảng tên tệp trong thư mục. - err
Kiểu chuỗi. Thông báo lỗi khi thao tác thất bại.
Mô tả
Liệt kê tất cả tên tệp trong một thư mục.
Ví dụ
local list, err = file.list("/var/mobile/")
if list then
print("Có "..#list.." tệp hoặc thư mục trong /var/mobile/")
for _, name in ipairs(list) do
print(name)
end
sys.alert(print.out())
else
sys.alert("/var/mobile/ không phải là thư mục: "..err)
end
Lưu ý: Ví dụ trên sử dụng hàm ngoài chương này sys.alert.
Ví dụ đệ quy sâu
-- full_paths = file.list(path, deep)
-- Khi deep là true, trả về đệ quy các đường dẫn đầy đủ
list = file.list("/var/mobile/Media/1ferver", true)
nLog(list)
--[[
Đầu ra có thể có
{ -- table: 0xc4cc58a30
[1] = "/var/mobile/Media/1ferver/snippets/syntax - do __ end.snippet",
[2] = "/var/mobile/Media/1ferver/snippets/app - app.uninstall(bid).snippet",
[3] = "/var/mobile/Media/1ferver/snippets/test - snippet.snippet",
...
}
--]]
Lưu ý: Ví dụ trên sử dụng hàm ngoài chương này nLog.