Difference between revisions of "love.filesystem.getDirectoryItems (日本語)"

(Created page with "{{newin (日本語)|0.9.0|090|type=関数|text=love.filesystem.enumerate から名称変更。}} 指定されたパスのファ...")
 
m
Line 1: Line 1:
{{newin (日本語)|[[0.9.0]]|090|type=関数|text=[[love.filesystem.enumerate (日本語)|love.filesystem.enumerate]] から名称変更。}}
+
{{newin (日本語)|[[0.9.0]]|090|type=関数|text=[[love.filesystem.enumerate (日本語)|love.filesystem.enumerate]] から名称変更}}
  
 
指定されたパスのファイルおよびサブディレクトリの名前をテーブルで返します。テーブルに対しては一切の並べ換えを行いません。順列はバラバラです。
 
指定されたパスのファイルおよびサブディレクトリの名前をテーブルで返します。テーブルに対しては一切の並べ換えを行いません。順列はバラバラです。

Revision as of 05:27, 18 September 2017

LÖVE 0.9.0 から使用可能
love.filesystem.enumerate から名称変更。


指定されたパスのファイルおよびサブディレクトリの名前をテーブルで返します。テーブルに対しては一切の並べ換えを行いません。順列はバラバラです。

パスとしてゲームおよびセーブ・ディレクトリとして存在するものが関数に渡された場合は、双方のファイルおよびディレクトリの場所の一覧を返します。

関数

概要

files = love.filesystem.getDirectoryItems( dir )

引数

string dir
ディレクトリ。

返値

table files
sequence は全てのファイルおよびサブディレクトリの名前を文字列として返したものです。

関数

LÖVE 0.9.1 まで使用可能でしたが LÖVE 0.10.0 で廃止されました
この異形は以降のバージョンでは非対応です。

概要

files = love.filesystem.getDirectoryItems( dir, callback )

引数

string dir
ディレクトリ。
function callback
ディレクトリにある各ファイルおよびフォルダから呼ばれる関数です。ファイル名は引数として関数に渡されます。

返値

table files
sequence は全てのファイルおよびサブディレクトリの名前を文字列として返したものです。

用例

簡単な用例

local dir = ""
-- 完全な LOVE のファイルがあるパスであると仮定します (この場合は最低でも main.lua が存在するはずです)。
local files = love.filesystem.getDirectoryItems(dir)
for k, file in ipairs(files) do
	print(k .. ". " .. file) -- "1. main.lua" といったものが出力されます。
end

全てのファイルとフォルダ内のフォルダ、さらにそのサブフォルダを再帰的に検索して表示します。

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

-- この関数は全てのサブディレクトリにあるフォルダおよびファイルといった
-- 全てのファイルをファイルツリーとして表した文字列で返します。
function recursiveEnumerate(folder, fileTree)
	local lfs = love.filesystem
	local filesTable = lfs.getDirectoryItems(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

関連


そのほかの言語