다음을 통해 공유


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.nio.file.FileVisitorJava 설명서

이 페이지의 일부는 Android 오픈 소스 프로젝트에서 만들고 공유하고 Creative Commons 2.5 특성 라이선스에 설명된 용어에 따라 사용되는 작업을 기반으로 하는 수정 사항입니다.

속성

Handle

기본 Android 개체의 JNI 값을 가져옵니다.

(다음에서 상속됨 IJavaObject)
JniIdentityHashCode

래핑된 인스턴스의 java.lang.System.identityHashCode() 값을 반환합니다.

(다음에서 상속됨 IJavaPeerable)
JniManagedPeerState

관리되는 피어의 상태입니다.

(다음에서 상속됨 IJavaPeerable)
JniPeerMembers

멤버 액세스 및 호출 지원.

(다음에서 상속됨 IJavaPeerable)
PeerReference

JniObjectReference 래핑된 Java 개체 인스턴스의 값을 반환합니다.

(다음에서 상속됨 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)

방문할 수 없는 파일에 대해 호출됩니다.

확장 메서드

JavaCast<TResult>(IJavaObject)

Android 런타임 확인 형식 변환을 수행합니다.

JavaCast<TResult>(IJavaObject)

파일의 방문자입니다.

GetJniTypeName(IJavaPeerable)

파일의 방문자입니다.

적용 대상