IFileVisitor インターフェイス

定義

ファイルの閲覧者。

[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&lt;Path&gt;() {
                    &#64;Override
                    public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
                        throws IOException
                    {
                        Files.delete(file);
                        return FileVisitResult.CONTINUE;
                    }
                    &#64;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&lt;Path&gt;() {
                        &#64;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;
                        }
                        &#64;Override
                        public FileVisitResult visitFile(Path file, BasicFileAttributes attrs)
                            throws IOException
                        {
                            Files.copy(file, target.resolve(source.relativize(file)));
                            return CONTINUE;
                        }
                    });

1.7 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

プロパティ

名前 説明
Handle

基になる Android オブジェクトの JNI 値を取得します。

(継承元 IJavaObject)
JniIdentityHashCode

ラップされたインスタンスの java.lang.System.identityHashCode() の値を返します。

(継承元 IJavaPeerable)
JniManagedPeerState

マネージド ピアの状態。

(継承元 IJavaPeerable)
JniObjectReferenceControlBlock

ファイルの閲覧者。

(継承元 IJavaPeerable)
JniPeerMembers

メンバー アクセスと呼び出しのサポート。

(継承元 IJavaPeerable)
PeerReference

ラップされたJava オブジェクト インスタンスのJniObjectReferenceを返します。

(継承元 IJavaPeerable)

メソッド

名前 説明
Disposed()

インスタンスが破棄されたときに呼び出されます。

(継承元 IJavaPeerable)
DisposeUnlessReferenced()

このインスタンスへの未処理の参照がない場合は、 Dispose()を呼び出します。それ以外の場合は何も実行しません。

(継承元 IJavaPeerable)
Finalized()

インスタンスが終了したときに呼び出されます。

(継承元 IJavaPeerable)
PostVisitDirectory(Object, IOException)

ディレクトリ内のエントリとそのすべての子孫がアクセスされた後に、ディレクトリに対して呼び出されます。

PreVisitDirectory(Object, IBasicFileAttributes)

ディレクトリ内のエントリがアクセスされる前に、ディレクトリに対して呼び出されます。

SetJniIdentityHashCode(Int32)

JniIdentityHashCodeによって返される値を設定します。

(継承元 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

ファイルの閲覧者。

(継承元 IJavaPeerable)
SetPeerReference(JniObjectReference)

PeerReferenceによって返される値を設定します。

(継承元 IJavaPeerable)
UnregisterFromRuntime()

ランタイムが将来の Java.Interop.JniRuntime+JniValueManager.PeekValue 呼び出しから返されないように、このインスタンスの登録を解除します。

(継承元 IJavaPeerable)
VisitFile(Object, IBasicFileAttributes)

ディレクトリ内のファイルに対して呼び出されます。

VisitFileFailed(Object, IOException)

アクセスできなかったファイルに対して呼び出されます。

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

ファイルの閲覧者。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象