love.filesystem.enumerate (Tiếng Việt)

Trả lại một bảng không theo trật tự, gồm các tên file cùng thư mục con có trong thư mục đã cho.

Lưu ý rằng thư mục đã cho này là tương đối so với thư mục hoặc file nén love được chạy. Sẽ không có tác dụng nếu cung cấp đường dẫn tuyệt đối.

Hàm

Tóm tắt

files = love.filesystem.enumerate( dir )

Tham số

string dir
Thư mục.

Kết quả trả lại

table files
Một dãy chứa tên của tất cả các file và thư mục con dưới dạng chuỗi kí tự.

Ví dụ

Ví dụ đơn giản

local dir = ""
--giả sử rằng đường dẫn hiện thời chứa nhiều file love (trong trường hợp này, ít nhất là có file main.lua)
local files = love.filesystem.enumerate(dir)
for k, file in ipairs(files) do
    print(k .. ". " .. file) --in ra kiểu như "1. main.lua"
end

Một cách đệ quy, hãy tìm ra và hiển thị tất cả các file và thư mục trong thư mục đã cho và các thư mục con của nó.

function love.load()
    filesString = recursiveEnumerate("", "")
end

-- Hàm này sẽ trả lại một chuỗi biểu diễn cây thư mục chứa tất cả các file
-- trong thư mục và các file trong thư mục con
function recursiveEnumerate(folder, fileTree)
    local lfs = love.filesystem
    local filesTable = lfs.enumerate(folder)
    for i,v in ipairs(filesTable) do
        local file = folder.."/"..v
        if lfs.isFile(file) then
            fileTree = fileTree.."\n"..file
        elseif lfs.isDirectory(file) then
            fileTree = fileTree.."\n"..file.." (DIR)"
            fileTree = recursiveEnumerate(file, fileTree)
        end
    end
    return fileTree
end
   
function love.draw()
    love.graphics.print(filesString, 0, 0)
end

Xem thêm


Ngôn ngữ khác

Personal tools