Files.WalkFileTree メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
WalkFileTree(IPath, IFileVisitor) |
ファイル ツリーをウォークします。 |
WalkFileTree(IPath, ICollection<FileVisitOption>, Int32, IFileVisitor) |
ファイル ツリーをウォークします。 |
WalkFileTree(IPath, IFileVisitor)
ファイル ツリーをウォークします。
[Android.Runtime.Register("walkFileTree", "(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path;", "", ApiSince=26)]
public static Java.Nio.FileNio.IPath? WalkFileTree (Java.Nio.FileNio.IPath? start, Java.Nio.FileNio.IFileVisitor? visitor);
[<Android.Runtime.Register("walkFileTree", "(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path;", "", ApiSince=26)>]
static member WalkFileTree : Java.Nio.FileNio.IPath * Java.Nio.FileNio.IFileVisitor -> Java.Nio.FileNio.IPath
パラメーター
- start
- IPath
開始ファイル
- visitor
- IFileVisitor
各ファイルに対して呼び出すファイル ビジター
戻り値
開始ファイル
- 属性
注釈
ファイル ツリーをウォークします。
このメソッドは、呼び出しが式 <blockquote の評価と同等であるかのように機能します。>
walkFileTree(start, EnumSet.noneOf(FileVisitOption.class), Integer.MAX_VALUE, visitor)
</blockquote> つまり、シンボリック リンクに従うのではなく、ファイル ツリーのすべてのレベルにアクセスします。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
WalkFileTree(IPath, ICollection<FileVisitOption>, Int32, IFileVisitor)
ファイル ツリーをウォークします。
[Android.Runtime.Register("walkFileTree", "(Ljava/nio/file/Path;Ljava/util/Set;ILjava/nio/file/FileVisitor;)Ljava/nio/file/Path;", "", ApiSince=26)]
public static Java.Nio.FileNio.IPath? WalkFileTree (Java.Nio.FileNio.IPath? start, System.Collections.Generic.ICollection<Java.Nio.FileNio.FileVisitOption>? options, int maxDepth, Java.Nio.FileNio.IFileVisitor? visitor);
[<Android.Runtime.Register("walkFileTree", "(Ljava/nio/file/Path;Ljava/util/Set;ILjava/nio/file/FileVisitor;)Ljava/nio/file/Path;", "", ApiSince=26)>]
static member WalkFileTree : Java.Nio.FileNio.IPath * System.Collections.Generic.ICollection<Java.Nio.FileNio.FileVisitOption> * int * Java.Nio.FileNio.IFileVisitor -> Java.Nio.FileNio.IPath
パラメーター
- start
- IPath
開始ファイル
- options
- ICollection<FileVisitOption>
トラバーサルを構成するためのオプション
- maxDepth
- Int32
アクセスするディレクトリ レベルの最大数
- visitor
- IFileVisitor
各ファイルに対して呼び出すファイル ビジター
戻り値
開始ファイル
- 属性
注釈
ファイル ツリーをウォークします。
このメソッドは、特定の開始ファイルにルートされたファイル ツリーを示します。 ファイル ツリー トラバーサルは、><検出された各ファイルに対して指定された がFileVisitor
呼び出された em depth-first</em> です。 ツリー内のすべてのアクセス可能なファイルがアクセスされた場合、または visit メソッドが の FileVisitResult#TERMINATE TERMINATE
結果を返すと、ファイル ツリーのトラバーサルが完了します。 visit メソッドが 、キャッチされていないエラー、またはランタイム例外によって IOException
終了した場合、トラバーサルは終了し、エラーまたは例外がこのメソッドの呼び出し元に伝達されます。
検出されたファイルごとに、このメソッドはその を読み取 java.nio.file.attribute.BasicFileAttributes
ろうとします。 ファイルがディレクトリ FileVisitor#visitFile visitFile
でない場合、メソッドはファイル属性を使用して呼び出されます。 I/O 例外が原因でファイル属性を読み取ることができない場合、 FileVisitor#visitFileFailed visitFileFailed
メソッドは I/O 例外で呼び出されます。
ファイルがディレクトリであり、ディレクトリを開けなかった場合 visitFileFailed
、メソッドは I/O 例外で呼び出されます。その後、ファイル ツリーウォークは、既定ではディレクトリの次 <の em>兄弟</em> で続行されます。
ディレクトリが正常に開かれると、ディレクトリ内のエントリとその <em>子孫</em> にアクセスします。 すべてのエントリにアクセスした場合、またはディレクトリの反復処理中に I/O エラーが発生すると、ディレクトリが閉じられ、訪問者の FileVisitor#postVisitDirectory postVisitDirectory
メソッドが呼び出されます。 ファイル ツリーウォークは、既定ではディレクトリの次 <の em>兄弟</em> で続行されます。
既定では、シンボリック リンクの後にこのメソッドが自動的に続くわけではありません。 パラメーターに options
オプションが FileVisitOption#FOLLOW_LINKS FOLLOW_LINKS
含まれている場合は、シンボリック リンクが続きます。 リンクに従い、ターゲットの属性を読み取ることができない場合、このメソッドはリンクの を BasicFileAttributes
取得しようとします。 読み取り可能な場合は、 visitFile
リンクの属性を使用してメソッドが呼び出されます (それ以外の場合は、上記で指定したとおりに visitFileFailed
メソッドが呼び出されます)。
パラメーターに options
オプションが FileVisitOption#FOLLOW_LINKS FOLLOW_LINKS
含まれている場合、このメソッドはアクセスされたディレクトリを追跡し、サイクルを検出できるようにします。 ディレクトリの先祖であるディレクトリにエントリがある場合、サイクルが発生します。 サイクル検出は、ディレクトリの を java.nio.file.attribute.BasicFileAttributes#fileKey file-key
記録するか、ファイル キーが使用できない場合は、 メソッドを #isSameFile isSameFile
呼び出して、ディレクトリが先祖と同じファイルであるかどうかをテストすることによって行います。 サイクルが検出されると、I/O エラーとして扱われ、 のインスタンスFileSystemLoopException
をFileVisitor#visitFileFailed visitFileFailed
使用して メソッドが呼び出されます。
パラメーターは maxDepth
、アクセスするディレクトリのレベルの最大数です。 の 0
値は、セキュリティ マネージャーによって拒否されない限り、開始ファイルのみがアクセスされることを意味します。 値 を Integer#MAX_VALUE MAX_VALUE
使用して、すべてのレベルにアクセスする必要があることを示すことができます。 メソッドは visitFile
、 で maxDepth
検出されたすべてのファイル (ディレクトリを含む) に対して呼び出されます。ただし、基本的なファイル属性を読み取ることができない場合は 、その場合 visitFileFailed
は メソッドが呼び出されます。
訪問者が の結果 null
を返す場合は、 NullPointerException
がスローされます。
セキュリティ マネージャーがインストールされ、ファイル (またはディレクトリ) へのアクセスを拒否すると、そのファイル (またはディレクトリ) に対してビジターは呼び出されません。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。