IFileVisitor インターフェイス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ファイルの閲覧者。
[Android.Runtime.Register("java/nio/file/FileVisitor", "", "Java.Nio.FileNio.IFileVisitorInvoker", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public interface IFileVisitor : Android.Runtime.IJavaObject, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("java/nio/file/FileVisitor", "", "Java.Nio.FileNio.IFileVisitorInvoker", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
type IFileVisitor = interface
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 派生
- 属性
- 実装
注釈
ファイルの閲覧者。 このインターフェイスの実装は、ファイル ツリー内の Files#walkFileTree Files.walkFileTree
各ファイルにアクセスするメソッドに提供されます。
<b>使用例:</b> ファイル ツリーを削除するとします。 その場合、ディレクトリ内のエントリが削除された後で、各ディレクトリを削除する必要があります。
Path start = ...
Files.walkFileTree(start, new SimpleFileVisitor<Path>() {
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
throws IOException
{
Files.delete(file);
return FileVisitResult.CONTINUE;
}
@Override
public FileVisitResult postVisitDirectory(Path dir, IOException e)
throws IOException
{
if (e == null) {
Files.delete(dir);
return FileVisitResult.CONTINUE;
} else {
// directory iteration failed
throw e;
}
}
});
さらに、ファイル ツリーをターゲットの場所にコピーするとします。 その場合は、シンボリック リンクに従い、ディレクトリ内のエントリをコピーする前にターゲット ディレクトリを作成する必要があります。
final Path source = ...
final Path target = ...
Files.walkFileTree(source, EnumSet.of(FileVisitOption.FOLLOW_LINKS), Integer.MAX_VALUE,
new SimpleFileVisitor<Path>() {
@Override
public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs)
throws IOException
{
Path targetdir = target.resolve(source.relativize(dir));
try {
Files.copy(dir, targetdir);
} catch (FileAlreadyExistsException e) {
if (!Files.isDirectory(targetdir))
throw e;
}
return CONTINUE;
}
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
throws IOException
{
Files.copy(file, target.resolve(source.relativize(file)));
return CONTINUE;
}
});
1.7 で追加されました。
の Java ドキュメントjava.nio.file.FileVisitor
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。
プロパティ
Handle |
基になる Android オブジェクトの JNI 値を取得します。 (継承元 IJavaObject) |
JniIdentityHashCode |
ラップされたインスタンスの |
JniManagedPeerState |
マネージド ピアの状態。 (継承元 IJavaPeerable) |
JniPeerMembers |
メンバー アクセスと呼び出しのサポート。 (継承元 IJavaPeerable) |
PeerReference |
ラップされた Java オブジェクト インスタンスの a JniObjectReference を返します。 (継承元 IJavaPeerable) |
メソッド
Disposed() |
インスタンスが破棄されたときに呼び出されます。 (継承元 IJavaPeerable) |
DisposeUnlessReferenced() |
このインスタンスへの未処理の参照がない場合は、呼び出 |
Finalized() |
インスタンスが終了したときに呼び出されます。 (継承元 IJavaPeerable) |
PostVisitDirectory(Object, IOException) |
ディレクトリ内のエントリとそのすべての子孫がアクセスされた後に、ディレクトリに対して呼び出されます。 |
PreVisitDirectory(Object, IBasicFileAttributes) |
ディレクトリ内のエントリがアクセスされる前に、ディレクトリに対して呼び出されます。 |
SetJniIdentityHashCode(Int32) |
によって |
SetJniManagedPeerState(JniManagedPeerStates) |
ファイルの閲覧者。 (継承元 IJavaPeerable) |
SetPeerReference(JniObjectReference) |
によって |
UnregisterFromRuntime() |
ランタイムが将来 Java.Interop.JniRuntime+JniValueManager.PeekValue の呼び出しから返されないように、このインスタンスの登録を解除します。 (継承元 IJavaPeerable) |
VisitFile(Object, IBasicFileAttributes) |
ディレクトリ内のファイルに対して呼び出されます。 |
VisitFileFailed(Object, IOException) |
アクセスできなかったファイルに対して呼び出されます。 |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
ファイルの閲覧者。 |
GetJniTypeName(IJavaPeerable) |
ファイルの閲覧者。 |