IFileVisitor Interface
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Um visitante de arquivos.
[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
- Derivado
- Atributos
- Implementações
Comentários
Um visitante de arquivos. Uma implementação dessa interface é fornecida aos Files#walkFileTree Files.walkFileTree
métodos para visitar cada arquivo em uma árvore de arquivos.
<b>Exemplos de uso:</b> Suponha que desejamos excluir uma árvore de arquivos. Nesse caso, cada diretório deve ser excluído depois que as entradas no diretório são excluídas.
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;
}
}
});
Além disso, suponha que queiramos copiar uma árvore de arquivos para um local de destino. Nesse caso, links simbólicos devem ser seguidos e o diretório de destino deve ser criado antes que as entradas no diretório sejam copiadas.
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;
}
});
Adicionado em 1.7.
Documentação Java para java.nio.file.FileVisitor
.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.
Propriedades
Handle |
Obtém o valor JNI do objeto Android subjacente. (Herdado de IJavaObject) |
JniIdentityHashCode |
Retorna o valor de |
JniManagedPeerState |
Estado do par gerenciado. (Herdado de IJavaPeerable) |
JniPeerMembers |
Acesso de membros e suporte à invocação. (Herdado de IJavaPeerable) |
PeerReference |
Retorna uma JniObjectReference das instâncias do objeto Java encapsulado. (Herdado de IJavaPeerable) |
Métodos
Disposed() |
Chamado quando a instância tiver sido descartada. (Herdado de IJavaPeerable) |
DisposeUnlessReferenced() |
Se não houver referências pendentes a este caso, então chame |
Finalized() |
Chamado quando a instância tiver sido finalizada. (Herdado de IJavaPeerable) |
PostVisitDirectory(Object, IOException) |
Invocado para um diretório depois que as entradas no diretório e todos os seus descendentes foram visitados. |
PreVisitDirectory(Object, IBasicFileAttributes) |
Invocado para um diretório antes que as entradas no diretório sejam visitadas. |
SetJniIdentityHashCode(Int32) |
Defina o valor retornado por |
SetJniManagedPeerState(JniManagedPeerStates) |
Um visitante de arquivos. (Herdado de IJavaPeerable) |
SetPeerReference(JniObjectReference) |
Defina o valor retornado por |
UnregisterFromRuntime() |
Cancele o registro dessa instância para que o tempo de execução não a retorne de chamadas futuras Java.Interop.JniRuntime+JniValueManager.PeekValue . (Herdado de IJavaPeerable) |
VisitFile(Object, IBasicFileAttributes) |
Invocado para um arquivo em um diretório. |
VisitFileFailed(Object, IOException) |
Invocado para um arquivo que não pôde ser visitado. |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
Um visitante de arquivos. |
GetJniTypeName(IJavaPeerable) |
Um visitante de arquivos. |