Skip navigation links
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
hutool
Prev Class
Next Class
Frames
No Frames
All Classes
Summary:
Nested |
Field |
Constr |
Method
Detail:
Field |
Constr |
Method
cn.hutool.core.io.file
Class FileCopier
java.lang.Object
cn.hutool.core.lang.copier.SrcToDestCopier
cn.hutool.core.io.file.FileCopier
All Implemented Interfaces:
Copier, Serializable
public class FileCopier
extends SrcToDestCopier
文件拷贝器
支持以下几种情况:
1、文件复制到文件
2、文件复制到目录
3、目录复制到目录
4、目录下的文件和目录复制到另一个目录
Since:
3.0.9
Author:
Looly
See Also:
Serialized Form
Field Summary
Fields inherited from class cn.hutool.core.lang.copier.SrcToDestCopier
copyFilter, dest, src
Constructor Summary
Constructors
Constructor and Description
FileCopier(File src,
File dest)
构造
Method Summary
All Methods Static Methods Instance Methods Concrete Methods
Modifier and Type
Method and Description
File
copy()
执行拷贝
拷贝规则为:
static FileCopier
create(File src,
File dest)
新建一个文件复制器
static FileCopier
create(String srcPath,
String destPath)
新建一个文件复制器
boolean
isCopyAttributes()
是否拷贝所有属性
boolean
isCopyContentIfDir()
当拷贝来源是目录时是否只拷贝目录下的内容
boolean
isOnlyCopyFile()
当拷贝来源是目录时是否只拷贝文件而忽略子目录
boolean
isOverride()
是否覆盖目标文件
FileCopier
setCopyAttributes(boolean isCopyAttributes)
设置是否拷贝所有属性
FileCopier
setCopyContentIfDir(boolean isCopyContentIfDir)
当拷贝来源是目录时是否只拷贝目录下的内容
FileCopier
setOnlyCopyFile(boolean isOnlyCopyFile)
设置当拷贝来源是目录时是否只拷贝文件而忽略子目录
FileCopier
setOverride(boolean isOverride)
设置是否覆盖目标文件
Methods inherited from class cn.hutool.core.lang.copier.SrcToDestCopier
getCopyFilter, getDest, getSrc, setCopyFilter, setDest, setSrc
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Constructor Detail
FileCopier
public FileCopier(File src,
File dest)
构造
Parameters:
src - 源文件
dest - 目标文件
Method Detail
create
public static FileCopier create(String srcPath,
String destPath)
新建一个文件复制器
Parameters:
srcPath - 源文件路径(相对ClassPath路径或绝对路径)
destPath - 目标文件路径(相对ClassPath路径或绝对路径)
Returns:
this
create
public static FileCopier create(File src,
File dest)
新建一个文件复制器
Parameters:
src - 源文件
dest - 目标文件
Returns:
this
isOverride
public boolean isOverride()
是否覆盖目标文件
Returns:
是否覆盖目标文件
setOverride
public FileCopier setOverride(boolean isOverride)
设置是否覆盖目标文件
Parameters:
isOverride - 是否覆盖目标文件
Returns:
this
isCopyAttributes
public boolean isCopyAttributes()
是否拷贝所有属性
Returns:
是否拷贝所有属性
setCopyAttributes
public FileCopier setCopyAttributes(boolean isCopyAttributes)
设置是否拷贝所有属性
Parameters:
isCopyAttributes - 是否拷贝所有属性
Returns:
this
isCopyContentIfDir
public boolean isCopyContentIfDir()
当拷贝来源是目录时是否只拷贝目录下的内容
Returns:
当拷贝来源是目录时是否只拷贝目录下的内容
setCopyContentIfDir
public FileCopier setCopyContentIfDir(boolean isCopyContentIfDir)
当拷贝来源是目录时是否只拷贝目录下的内容
Parameters:
isCopyContentIfDir - 是否只拷贝目录下的内容
Returns:
this
isOnlyCopyFile
public boolean isOnlyCopyFile()
当拷贝来源是目录时是否只拷贝文件而忽略子目录
Returns:
当拷贝来源是目录时是否只拷贝文件而忽略子目录
Since:
4.1.5
setOnlyCopyFile
public FileCopier setOnlyCopyFile(boolean isOnlyCopyFile)
设置当拷贝来源是目录时是否只拷贝文件而忽略子目录
Parameters:
isOnlyCopyFile - 当拷贝来源是目录时是否只拷贝文件而忽略子目录
Returns:
this
Since:
4.1.5
copy
public File copy()
throws IORuntimeException
执行拷贝
拷贝规则为:
1、源为文件,目标为已存在目录,则拷贝到目录下,文件名不变
2、源为文件,目标为不存在路径,则目标以文件对待(自动创建父级目录)比如:/dest/aaa,如果aaa不存在,则aaa被当作文件名
3、源为文件,目标是一个已存在的文件,则当setOverride(boolean)设为true时会被覆盖,默认不覆盖
4、源为目录,目标为已存在目录,当setCopyContentIfDir(boolean)为true时,只拷贝目录中的内容到目标目录中,否则整个源目录连同其目录拷贝到目标目录中
5、源为目录,目标为不存在路径,则自动创建目标为新目录,然后按照规则4复制
6、源为目录,目标为文件,抛出IO异常
7、源路径和目标路径相同时,抛出IO异常
Returns:
拷贝后目标的文件或目录
Throws:
IORuntimeException - IO异常
Skip navigation links
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
Prev Class
Next Class
Frames
No Frames
All Classes
Summary:
Nested |
Field |
Constr |
Method
Detail:
Field |
Constr |
Method
Copyright © 2024. All rights reserved.
|