tango.io.FileScan翻訳
5094 ワード
tango.io.FileScan
(r4774)
License:
BSD style: see license.txt
Version:
Jun 2004: Initial release
Version:
Dec 2006: Pacific release
Author:
Kris
class FileScan ¶ #
ファイルとディレクトリを再帰的にスキャン
を選択し、実行時にフィルタファイルを出力構造に追加します.これにより、サブディレクトリとその中に含まれるファイルのリストを生成できます.次の例では、すべての接尾辞が「
.d」現在のディレクトリの下にあるファイルとそれらを含むフォルダ:1
2
3
4
5
6
7
8
9
10
11
auto scan = new FileScan;
scan (".", ".d");
Stdout.formatln ("{} Folders", scan.folders.length);
foreach (folder; scan.folders)
Stdout.formatln ("{}", folder);
Stdout.formatln ("
{} Files", scan.files.length);
foreach (file; scan.files)
Stdout.formatln ("{}", file);
これは必ずしも膨大な数のファイルをスキャンする最も有効な方法ではありませんが、これは便利な操作方法です.
alias FilePath.Filter Filter ¶ #
フィルタの別名を委任します.一つ受け入れる
FilePathと
パラメータとしてbool値
を選択し、
bool.
FilePathパラメータはスキャンで見つけたファイルを表します.
boolパラメータ表示
FilePathがフォルダを表すかどうか.
フィルタと一致する場合、フィルタはtrueを返します.パスがフォルダであればfalseを返し、中に含まれているすべてのファイルを無視することに注意してください.フォルダを再帰するには、次のようにします.1
return (isDir || match (fp.name));
char[][] errors () [public] ¶ #
最後のスキャンで見つかったすべてのエラーを返します.
FilePath[] files () [public] ¶ #
最後のスキャンで見つけたすべてのファイルを返します.
FilePath[] folders () [public] ¶ #
最後のスキャンで見つけたすべてのフォルダを返します.
FileScan sweep (char[] path, bool recurse = true) ¶ #
指定した親(親)パスからスキャン(
sweep)フィルタを適用しない一連のファイルとディレクトリ.
FileScan sweep (char[] path, char[] match, bool recurse = true) ¶ #
指定した親(親)パスからスキャン(
sweep)指定された接尾辞によってファイルがフィルタされる一連のファイルとディレクトリ.
FileScan sweep (char[] path, Filter filter, bool recurse = true) ¶ #
指定した親(親)パスからスキャン(
sweep)一連のファイルとディレクトリで、ファイルは所定の依頼によってフィルタされます.
FileScan scan (FilePath folder, Filter filter, bool recurse) [private] ¶ #
ファイルとサブディレクトリを検索する内部インスタンス.僕らが通りかかったのは
'.'文字からなる名前.
Copyright (c) 2004 Kris Bell. All rights reserved::Generated by dil on Sat Jun 27 18:19:38 2009. Rendered by kandil .
1
2
3
4
5
6
7
8
9
10
11
auto scan = new FileScan;
scan (".", ".d");
Stdout.formatln ("{} Folders", scan.folders.length);
foreach (folder; scan.folders)
Stdout.formatln ("{}", folder);
Stdout.formatln ("
{} Files", scan.files.length);
foreach (file; scan.files)
Stdout.formatln ("{}", file);
1
return (isDir || match (fp.name));