Condividi tramite


IFileVisitor Interfaccia

Definizione

Visitatore dei file.

[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
Derivato
Attributi
Implementazioni

Commenti

Visitatore dei file. Un'implementazione di questa interfaccia viene fornita ai Files#walkFileTree Files.walkFileTree metodi per visitare ogni file in un albero di file.

<b>Esempi di utilizzo:</b> Si supponga di voler eliminare un albero di file. In tal caso, ogni directory deve essere eliminata dopo l'eliminazione delle voci nella directory.

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;
                        }
                    }
                });

Si supponga inoltre di voler copiare un albero di file in un percorso di destinazione. In tal caso, i collegamenti simbolici devono essere seguiti e la directory di destinazione deve essere creata prima che le voci nella directory vengano copiate.

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;
                        }
                    });

Aggiunta nella versione 1.7.

Documentazione java per java.nio.file.FileVisitor.

Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal progetto Open Source Android e usato in base ai termini descritti nella licenza Creative Commons 2.5 Attribuzione.

Proprietà

Handle

Ottiene il valore JNI dell'oggetto Android sottostante.

(Ereditato da IJavaObject)
JniIdentityHashCode

Restituisce il valore di java.lang.System.identityHashCode() per l'istanza di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)
JniManagedPeerState

Stato del peer gestito.

(Ereditato da IJavaPeerable)
JniPeerMembers

Supporto per l'accesso ai membri e la chiamata.

(Ereditato da IJavaPeerable)
PeerReference

Restituisce un JniObjectReference oggetto dell'istanza dell'oggetto Java di cui è stato eseguito il wrapping.

(Ereditato da IJavaPeerable)

Metodi

Disposed()

Chiamato quando l'istanza è stata eliminata.

(Ereditato da IJavaPeerable)
DisposeUnlessReferenced()

Se non sono presenti riferimenti in sospeso a questa istanza, chiama Dispose(); in caso contrario, non esegue alcuna operazione.

(Ereditato da IJavaPeerable)
Finalized()

Chiamato quando l'istanza è stata finalizzata.

(Ereditato da IJavaPeerable)
PostVisitDirectory(Object, IOException)

Richiamato per una directory dopo le voci nella directory e tutti i relativi discendenti, sono stati visitati.

PreVisitDirectory(Object, IBasicFileAttributes)

Richiamato per una directory prima che vengano visitate le voci nella directory.

SetJniIdentityHashCode(Int32)

Impostare il valore restituito da JniIdentityHashCode.

(Ereditato da IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

Visitatore dei file.

(Ereditato da IJavaPeerable)
SetPeerReference(JniObjectReference)

Impostare il valore restituito da PeerReference.

(Ereditato da IJavaPeerable)
UnregisterFromRuntime()

Annullare la registrazione di questa istanza in modo che il runtime non lo restituisca dalle chiamate future Java.Interop.JniRuntime+JniValueManager.PeekValue .

(Ereditato da IJavaPeerable)
VisitFile(Object, IBasicFileAttributes)

Richiamato per un file in una directory.

VisitFileFailed(Object, IOException)

Richiamato per un file che non è stato possibile visitare.

Metodi di estensione

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Visitatore dei file.

GetJniTypeName(IJavaPeerable)

Visitatore dei file.

Si applica a