ディレクトリリスト内の各ファイルがディレクトリであるかどうかを確認することにより、ディレクトリを再帰的に移動できます。次の関数は、すべてのファイルの数を再帰的に返します(ディレクトリを除く)。
function recursiveDirectoryListing( directory:File ):int
{
var count:int = 0;
if (directory.isDirectory)
{
var files:Array = directory.getDirectoryListing();
for (var i:int = 0; i < files.length; i++)
{
if (files[i].isDirectory)
{
count += recursiveDirectoryListing( files[i] );
}
else
{
trace("file found: " + files[i].nativePath );
count += 1;
}
}
}
return count;
}
次に、リストする必要のある場所でこの関数を呼び出すことができます。
recursiveDirectoryListing( File.applicationStorageDirectory );