Views
love.filesystem.getDirectoryItems (Português)
love.filesystem.getDirectoryItems
Disponível desde o LÖVE 0.9.0 |
Foi renomeado, antes era love.filesystem.enumerate. |
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.getDirectoryItems( dir )
Argumentos
string dir
- O diretório.
Retorna
Função
Disponível desde o LÖVE 0.9.1 |
Esta variante não é suportada em versões anteriores. |
Sinopse
arquivos = love.filesystem.getDirectoryItems( dir, callback )
Argumentos
string dir
- O diretório.
função callback
- Uma função que é chamada para cada arquivo e pasta no diretório. O nome do arquivo é passado à função como um argumento.
Retorna
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.getDirectoryItems(dir)
for k, arquivo in ipairs(arquivos) do
print(k .. ". " .. arquivo) --imprime algo como "1. main.lua"
end
--supondo que nosso caminho esteja cheio de arquivos do LÖVE (neste caso, deve conter pelo menos o main.lua)
local arquivos = love.filesystem.getDirectoryItems(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.getDirectoryItems(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
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.getDirectoryItems(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
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info