ISecureDirectoryStream 接口

定义

定义 DirectoryStream 相对于打开目录的文件的操作。

[Android.Runtime.Register("java/nio/file/SecureDirectoryStream", "", "Java.Nio.FileNio.ISecureDirectoryStreamInvoker", ApiSince=26)]
[Java.Interop.JavaTypeParameters(new System.String[] { "T" })]
public interface ISecureDirectoryStream : IDisposable, Java.Interop.IJavaPeerable, Java.Nio.FileNio.IDirectoryStream
[<Android.Runtime.Register("java/nio/file/SecureDirectoryStream", "", "Java.Nio.FileNio.ISecureDirectoryStreamInvoker", ApiSince=26)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "T" })>]
type ISecureDirectoryStream = interface
    interface IDirectoryStream
    interface ICloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IIterable
属性
实现

注解

定义 DirectoryStream 相对于打开目录的文件的操作。 A SecureDirectoryStream 适用于需要遍历文件树或以无争用方式对目录进行操作的复杂或安全敏感应用程序。 当无法隔离执行一系列文件操作时,可能会出现争用条件。 此接口定义的每个文件操作都指定相对路径。 对文件的所有访问都相对于打开的目录,不管目录在打开时是否移动或被攻击者替换。 A SecureDirectoryStream 还可用作虚拟 <em>工作目录</em>。

需要 SecureDirectoryStream 基础操作系统的相应支持。 如果实现支持此功能, DirectoryStream 则该方法返回 Files#newDirectoryStream newDirectoryStream 的方法将是一个 SecureDirectoryStream ,并且必须强制转换为该类型才能调用此接口定义的方法。

对于默认值 java.nio.file.spi.FileSystemProvider provider,并且设置了安全管理器,则使用通过解析给定相对路径来针对 目录的原始路径 (不管目录自打开后是否移动目录)来使用获取的路径执行权限检查。

已在 1.7 中添加。

适用于 . 的 java.nio.file.SecureDirectoryStreamJava 文档

本页的某些部分是根据 Android 开放源代码项目创建和共享的工作进行的修改,并根据 Creative Commons 2.5 属性许可证中所述的术语使用。

属性

Handle

获取基础 Android 对象的 JNI 值。

(继承自 IJavaObject)
JniIdentityHashCode

返回包装实例的值 java.lang.System.identityHashCode()

(继承自 IJavaPeerable)
JniManagedPeerState

托管对等方的状态。

(继承自 IJavaPeerable)
JniPeerMembers

成员访问和调用支持。

(继承自 IJavaPeerable)
PeerReference

返回 JniObjectReference 包装的 Java 对象实例。

(继承自 IJavaPeerable)

方法

Close()

关闭此流并释放与之关联的任何系统资源。

(继承自 ICloseable)
DeleteDirectory(Object)

删除目录。

DeleteFile(Object)

删除文件。

Disposed()

在释放实例时调用。

(继承自 IJavaPeerable)
DisposeUnlessReferenced()

如果没有对此实例的未完成引用,则调用 Dispose();否则不执行任何操作。

(继承自 IJavaPeerable)
Finalized()

在实例完成时调用。

(继承自 IJavaPeerable)
ForEach(IConsumer)

对每个元素执行给定操作,直到处理完所有元素 Iterable 或该操作引发异常。

(继承自 IIterable)
GetFileAttributeView(Class)

返回用于访问此目录的文件属性的新文件属性视图。

GetFileAttributeView(Object, Class, LinkOption[])

返回用于访问此目录的文件属性的新文件属性视图。

Iterator()

返回与此关联的 DirectoryStream迭代器。

(继承自 IDirectoryStream)
Move(Object, ISecureDirectoryStream, Object)

将文件从此目录移动到另一个目录。

NewByteChannel(Object, ICollection<IOpenOption>, IFileAttribute[])

打开或创建此目录中的文件,返回可查找字节通道以访问该文件。

NewDirectoryStream(Object, LinkOption[])

打开由给定路径标识的目录,返回一个 SecureDirectoryStream 循环访问目录中的条目。

SetJniIdentityHashCode(Int32)

设置由 JniIdentityHashCode. 返回的值。

(继承自 IJavaPeerable)
SetJniManagedPeerState(JniManagedPeerStates)

定义 DirectoryStream 相对于打开目录的文件的操作。

(继承自 IJavaPeerable)
SetPeerReference(JniObjectReference)

设置由 PeerReference. 返回的值。

(继承自 IJavaPeerable)
Spliterator()

Spliterator创建由此Iterable描述的元素。

(继承自 IIterable)
UnregisterFromRuntime()

取消注册此实例,以便运行时不会从将来 Java.Interop.JniRuntime+JniValueManager.PeekValue 的调用中返回它。

(继承自 IJavaPeerable)

扩展方法

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

定义 DirectoryStream 相对于打开目录的文件的操作。

GetJniTypeName(IJavaPeerable)

定义 DirectoryStream 相对于打开目录的文件的操作。

ToEnumerable(IIterable)

定义 DirectoryStream 相对于打开目录的文件的操作。

ToEnumerable<T>(IIterable)

定义 DirectoryStream 相对于打开目录的文件的操作。

适用于