public enum StandardOpenOption extends Enum<StandardOpenOption> implements OpenOption
Enum Constant and Description |
---|
APPEND
如果文件打开
WRITE 访问,则字节将被写入文件的末尾而不是开头。
|
CREATE
创建一个新文件(如果不存在)。
|
CREATE_NEW
创建一个新的文件,如果该文件已经存在失败。
|
DELETE_ON_CLOSE
关闭时删除。
|
DSYNC
要求将文件内容的每次更新都与底层存储设备同步写入。
|
READ
打开阅读权限。
|
SPARSE
稀疏文件
|
SYNC
要求将文件内容或元数据的每次更新都同步写入底层存储设备。
|
TRUNCATE_EXISTING
如果文件已经存在,并且打开
WRITE 访问,则其长度将截断为0。
|
WRITE
打开以进行写入。
|
Modifier and Type | Method and Description |
---|---|
static StandardOpenOption |
valueOf(String name)
以指定的名称返回此类型的枚举常量。
|
static StandardOpenOption[] |
values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。
|
public static final StandardOpenOption READ
public static final StandardOpenOption WRITE
public static final StandardOpenOption APPEND
WRITE
访问,则字节将被写入文件的末尾而不是开头。
如果文件被打开以供其他程序的写访问,那么如果写入文件的末尾是原子的,那么它是文件系统特定的。
public static final StandardOpenOption TRUNCATE_EXISTING
public static final StandardOpenOption CREATE
public static final StandardOpenOption CREATE_NEW
public static final StandardOpenOption DELETE_ON_CLOSE
close
方法关闭时删除该文件。
如果未调用close
方法,则尽可能尝试在Java虚拟机终止(通常由Java语言规范定义的情况下,或在可能的情况下异常))删除该文件。
此选项主要用于仅由Java虚拟机的单个实例使用的工作文件 。
当打开其他实体同时打开的文件时,不建议使用此选项。
关于什么时候和如何删除文件的许多细节是实现特定的,因此没有指定。
特别地,当文件打开时,实现可能不能保证在被攻击者替换时删除预期文件。
因此,使用此选项时,安全敏感应用程序应该小心。
出于安全考虑,此选项可能意味着LinkOption.NOFOLLOW_LINKS
选项。 换句话说,如果在打开作为符号链接的现有文件时存在该选项,那么它可能会失败(通过抛出IOException
)。
public static final StandardOpenOption SPARSE
public static final StandardOpenOption SYNC
public static final StandardOpenOption DSYNC
public static StandardOpenOption[] values()
for (StandardOpenOption c : StandardOpenOption.values())
System.out.println(c);
public static StandardOpenOption valueOf(String name)
name
- 要返回的枚举常量的名称。
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量
NullPointerException
- 如果参数为空