Interface FileSystem
-
- All Known Implementing Classes:
LocalFileSystem
public interface FileSystem文件系统。
-
-
Field Summary
Fields Modifier and Type Field Description static charPATH_SEPARATORstatic java.lang.StringPATH_SEPARATOR_STRING
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default voidcopy(java.lang.String source, java.lang.String destination)以 replaceExisting=false 的方式复制文件或目录。voidcopy(java.lang.String source, java.lang.String destination, boolean replaceExisting)复制文件或目录,PathMeta保持不变。voidcreateDirectory(java.lang.String path)创建目录。目录已存在则忽略。voidcreateSymbolicLink(java.lang.String linkPath, java.lang.String targetPath)创建文件软链接,软链接文件不存在则创建,否则替换voiddelete(java.lang.String path)删除文件或目录。default java.util.stream.Stream<? extends PathMeta>directories(java.lang.String path)获取目录下子目录,非递归。default java.util.stream.Stream<? extends PathMeta>directories(java.lang.String path, boolean recursive)获取目录下子目录。default java.util.stream.Stream<? extends PathMeta>directories(java.lang.String path, java.lang.String search)获取目录下子目录,非递归。default java.util.stream.Stream<? extends PathMeta>directories(java.lang.String path, java.lang.String search, boolean recursive)获取目录下子目录。java.util.stream.Stream<? extends PathMeta>directories(java.lang.String path, java.lang.String search, boolean recursive, int offset, int limit, PathMetaSort sort)获取目录下子目录。default booleanexists(java.lang.String path)检查路径是否存在。default java.util.stream.Stream<? extends PathMeta>files(java.lang.String path)获取目录下文件,非递归。default java.util.stream.Stream<? extends PathMeta>files(java.lang.String path, boolean recursive)获取目录下文件。default java.util.stream.Stream<? extends PathMeta>files(java.lang.String path, java.lang.String search)获取目录下文件,非递归。default java.util.stream.Stream<? extends PathMeta>files(java.lang.String path, java.lang.String search, boolean recursive)获取目录下文件。java.util.stream.Stream<? extends PathMeta>files(java.lang.String path, java.lang.String search, boolean recursive, int offset, int limit, PathMetaSort sort)获取目录下文件。<M extends PathMeta>
Mmeta(java.lang.String path)获取路径的元信息。default voidmove(java.lang.String source, java.lang.String destination)以 replaceExisting=false 的方式移动文件或目录。voidmove(java.lang.String source, java.lang.String destination, boolean replaceExisting)移动文件或目录,PathMeta保持不变。java.io.InputStreamopenReadStream(java.lang.String path)用流的方式读取文件内容,调用方负责流的关闭。java.io.OutputStreamopenWriteStream(java.lang.String path)用流的方式写入文件内容,调用方负责流的关闭。 当文件不存在时会自动创建。 以Append的方式写入。voidput(java.lang.String path, java.io.InputStream stream)如果文件未存在,则创建;否则替换。default voidput(java.lang.String path, java.lang.CharSequence txt)如果文件未存在,则创建;否则替换。default java.lang.Stringread(java.lang.String path)使用UTF8编码读取文件。default java.lang.Stringread(java.lang.String path, java.nio.charset.Charset charset)static <T extends PathMeta>
java.util.stream.Stream<T>sort(java.util.stream.Stream<T> stream, PathMetaSort sort)voidtouchCreation(java.lang.String path)刷新文件或目录的PathMeta.getCreationTime()。voidtouchLastAccess(java.lang.String path)刷新文件或目录的PathMeta.getLastAccessTime()。voidtouchLastModified(java.lang.String path)刷新文件或目录的PathMeta.getLastModifiedTime()。
-
-
-
Field Detail
-
PATH_SEPARATOR
static final char PATH_SEPARATOR
- See Also:
- Constant Field Values
-
PATH_SEPARATOR_STRING
static final java.lang.String PATH_SEPARATOR_STRING
-
-
Method Detail
-
sort
static <T extends PathMeta> java.util.stream.Stream<T> sort(java.util.stream.Stream<T> stream, PathMetaSort sort)
-
createDirectory
void createDirectory(java.lang.String path)
创建目录。目录已存在则忽略。- Parameters:
path- 路径
-
put
void put(java.lang.String path, java.io.InputStream stream) throws InvalidFileException如果文件未存在,则创建;否则替换。- Parameters:
path- 要写入的路径stream- 输入流- Throws:
InvalidFileException- 无效文件
-
put
default void put(java.lang.String path, java.lang.CharSequence txt) throws InvalidFileException如果文件未存在,则创建;否则替换。- Parameters:
path- 要写入的路径txt- 输入文本- Throws:
InvalidFileException- 无效文件
-
exists
default boolean exists(java.lang.String path)
检查路径是否存在。- Parameters:
path- 路径
-
read
default java.lang.String read(java.lang.String path) throws InvalidFileException使用UTF8编码读取文件。- Parameters:
path- 文件路径- Throws:
InvalidFileException- 无效文件
-
read
default java.lang.String read(java.lang.String path, java.nio.charset.Charset charset) throws InvalidFileException- Parameters:
path- 文件路径charset- 文件编码- Throws:
InvalidFileException- 无效文件
-
openReadStream
java.io.InputStream openReadStream(java.lang.String path) throws InvalidFileException用流的方式读取文件内容,调用方负责流的关闭。- Parameters:
path- 路径- Throws:
InvalidFileException- 无效文件
-
openWriteStream
java.io.OutputStream openWriteStream(java.lang.String path) throws InvalidFileException用流的方式写入文件内容,调用方负责流的关闭。- 当文件不存在时会自动创建。
- 以Append的方式写入。
- Parameters:
path- 路径- Throws:
InvalidFileException- 无效文件
-
move
default void move(java.lang.String source, java.lang.String destination) throws FileSystemException以 replaceExisting=false 的方式移动文件或目录。- Throws:
FileSystemException- See Also:
move(String, String, boolean)
-
move
void move(java.lang.String source, java.lang.String destination, boolean replaceExisting) throws FileSystemException移动文件或目录,PathMeta保持不变。- Parameters:
source- 源路径destination- 目标路径replaceExisting- 如果true,替换现存的文件,否则忽略移动。- Throws:
PathNotFoundException- 源路径不存在FileSystemException- 文件系统操作失败
-
copy
default void copy(java.lang.String source, java.lang.String destination) throws FileSystemException以 replaceExisting=false 的方式复制文件或目录。- Throws:
FileSystemException- See Also:
copy(String, String, boolean)
-
copy
void copy(java.lang.String source, java.lang.String destination, boolean replaceExisting) throws FileSystemException复制文件或目录,PathMeta保持不变。- Parameters:
source- 源路径destination- 目标路径replaceExisting- 如果true,替换现存的文件,否则忽略复制。- Throws:
PathNotFoundException- 源路径不存在FileSystemException- 文件系统操作失败
-
delete
void delete(java.lang.String path)
删除文件或目录。- Parameters:
path- 路径
-
touchCreation
void touchCreation(java.lang.String path)
刷新文件或目录的PathMeta.getCreationTime()。- Parameters:
path- 路径
-
touchLastModified
void touchLastModified(java.lang.String path)
刷新文件或目录的PathMeta.getLastModifiedTime()。- Parameters:
path- 路径
-
touchLastAccess
void touchLastAccess(java.lang.String path)
刷新文件或目录的PathMeta.getLastAccessTime()。- Parameters:
path- 路径
-
meta
<M extends PathMeta> M meta(java.lang.String path)
获取路径的元信息。- Parameters:
path- 路径- Returns:
- 路径不存在时,返回null。
-
directories
default java.util.stream.Stream<? extends PathMeta> directories(java.lang.String path) throws PathNotFoundException
获取目录下子目录,非递归。
-
directories
default java.util.stream.Stream<? extends PathMeta> directories(java.lang.String path, boolean recursive) throws PathNotFoundException
获取目录下子目录。
-
directories
default java.util.stream.Stream<? extends PathMeta> directories(java.lang.String path, java.lang.String search) throws PathNotFoundException
获取目录下子目录,非递归。
-
directories
default java.util.stream.Stream<? extends PathMeta> directories(java.lang.String path, java.lang.String search, boolean recursive) throws PathNotFoundException
获取目录下子目录。
-
directories
java.util.stream.Stream<? extends PathMeta> directories(java.lang.String path, java.lang.String search, boolean recursive, int offset, int limit, PathMetaSort sort) throws PathNotFoundException
获取目录下子目录。- Parameters:
path- 目录路径search- 以contains方式查找目录名。如果为空,返回所有结果。recursive- 如果true,则递归搜索所有子目录。offset- 开始位置索引。小于0则忽略。limit- 数量限制。小于0则忽略。sort- 排序选项。选项之间是互斥的。- Throws:
PathNotFoundException- 目录不存在
-
files
default java.util.stream.Stream<? extends PathMeta> files(java.lang.String path) throws PathNotFoundException
获取目录下文件,非递归。- Throws:
PathNotFoundException- See Also:
files(String, String, boolean, int, int, PathMetaSort)
-
files
default java.util.stream.Stream<? extends PathMeta> files(java.lang.String path, boolean recursive) throws PathNotFoundException
获取目录下文件。- Throws:
PathNotFoundException- See Also:
files(String, String, boolean, int, int, PathMetaSort)
-
files
default java.util.stream.Stream<? extends PathMeta> files(java.lang.String path, java.lang.String search) throws PathNotFoundException
获取目录下文件,非递归。- Throws:
PathNotFoundException- See Also:
files(String, String, boolean, int, int, PathMetaSort)
-
files
default java.util.stream.Stream<? extends PathMeta> files(java.lang.String path, java.lang.String search, boolean recursive) throws PathNotFoundException
获取目录下文件。- Throws:
PathNotFoundException- See Also:
files(String, String, boolean, int, int, PathMetaSort)
-
files
java.util.stream.Stream<? extends PathMeta> files(java.lang.String path, java.lang.String search, boolean recursive, int offset, int limit, PathMetaSort sort) throws PathNotFoundException
获取目录下文件。- Parameters:
path- 目录路径search- 以contains方式查找文件名。如果为空,返回所有结果。recursive- 如果true,则递归搜索所有子目录。offset- 开始位置索引。小于0则忽略。limit- 数量限制。小于0则忽略。sort- 排序选项。选项之间是互斥的。- Throws:
PathNotFoundException- 目录不存在
-
createSymbolicLink
void createSymbolicLink(java.lang.String linkPath, java.lang.String targetPath) throws InvalidFileException创建文件软链接,软链接文件不存在则创建,否则替换- Parameters:
linkPath- 软链接路径targetPath- 目标路径- Throws:
InvalidFileException- 无效文件
-
-