love.filesystem.enumerate (Português)

love.filesystem.enumerate


Removido no LÖVE 0.9.0
Foi renomeado para love.filesystem.getDirectoryItems.


Retorna uma tabela com os nomes de arquivos e subdiretórios do caminho especificado. A tabela não é organizada de modo nenhum; a ordem é indefinida.

Se o caminho dado à função existir nos diretórios de jogo e de escrita, serão listados arquivos e diretórios de ambos lugares.

Função

Sinopse

arquivos = love.filesystem.enumerate( dir )

Argumentos

string dir
O diretório.

Retorna

tabela arquivos
Uma sequência com os nomes de todos arquivos e subdiretórios como strings.

Exemplos

Exemplo Simples

local dir = ""
--supondo que nosso caminho esteja cheio de arquivos do LÖVE (neste caso, deve conter pelo menos o main.lua)
local arquivos = love.filesystem.enumerate(dir)
for k, arquivo in ipairs(arquivos) do
    print(k .. ". " .. arquivo) --imprime algo como "1. main.lua"
end

Encontrar recursivamente e exibir todos arquivos e pastas em uma pasta e suas subpastas.

function love.load()
    stringDeArquivos = enumerarRecursivamente("", "")
end

-- Esta função irá retornar um string contendo uma
-- árvore de arquivos com todos arquivos na pasta e
-- arquivos em todas subpastas
function enumerarRecursivamente(pasta, arvoreDeArquivos)
    local lfs = love.filesystem
    local tabelaDeArquivos = lfs.enumerate(pasta)
    for i,v in ipairs(tabelaDeArquivos) do
        local arquivo = pasta.."/"..v
        if lfs.isFile(arquivo) then
            arvoreDeArquivos = arvoreDeArquivos.."\n"..arquivo
        elseif lfs.isDirectory(arquivo) then
            arvoreDeArquivos = arvoreDeArquivos.."\n"..arquivo.." (DIR)"
            arvoreDeArquivos = enumerarRecursivamente(arquivo, arvoreDeArquivos)
        end
    end
    return arvoreDeArquivos
end
   
function love.draw()
    love.graphics.print(stringDeArquivos, 0, 0)
end

Veja Também


Outras Línguas

Personal tools