public class FileUtil
extends java.lang.Object
| 限定符和类型 | 字段和说明 |
|---|---|
static long |
FILE_COPY_BUFFER_SIZE
复制文件的buffer大小
|
static long |
ONE_GB
1GB
|
static long |
ONE_KB
1KB=1024字节
|
static long |
ONE_MB
1MB
|
static long |
ONE_TB
1TB
|
| 限定符和类型 | 方法和说明 |
|---|---|
static boolean |
cleanDirectory(java.io.File directory)
清空文件夹
只清空文件夹中的内容,当前文件夹不会被删除
|
static void |
copyDirectory(java.io.File source,
java.io.File target)
复制文件夹
如果target中有和source中的文件名重复,会直接覆盖处理
|
static void |
copyDirectoryToDirectory(java.io.File source,
java.io.File target)
复制文件夹至指定的文件夹中
|
static void |
copyFile(java.io.File source,
java.io.File target)
文件复制
如果target文件已存在,会覆盖原有的文件
|
static void |
copyFileToDirectory(java.io.File source,
java.io.File target)
复制文件到指定的文件夹中
如果源文件已经在目标文件夹中,则进行覆盖
|
static boolean |
deleteQuietly(java.io.File file)
删除文件
即可以删除文件也可以删除文件夹
遇到错误不抛出异常
|
static boolean |
equalsCanonicalPath(java.io.File file1,
java.io.File file2)
文件的唯一绝对路径比较
|
static java.lang.String |
getCanonicalPath(java.io.File file)
返回文件的唯一绝对路径
|
static boolean |
isSub(java.io.File parent,
java.io.File sub)
判断sub文件是不是parent的子目录
|
static boolean |
isSub(java.nio.file.Path parent,
java.nio.file.Path sub)
判断sub path是不是parent的子path
|
static void |
moveDirectory(java.io.File source,
java.io.File target)
移动文件夹
|
static void |
moveDirectoryToDirectory(java.io.File source,
java.io.File target)
移动文件夹至目标文件夹中
|
static void |
moveFile(java.io.File source,
java.io.File target)
移动文件
src和target必须是文件,文件夹不行
|
static void |
moveFileToDirectory(java.io.File source,
java.io.File target)
移动文件至指定的文件夹中
|
static void |
moveToDirectory(java.io.File source,
java.io.File target)
移动文件/文件夹至指定的文件夹中
|
static java.io.FileInputStream |
openInputStream(java.io.File file)
打开指定文件的(输入)FileInputStream
|
static java.io.FileOutputStream |
openOutputStream(java.io.File file,
boolean append)
打开指定文件的(输出)OutputStream
如果文件存在即打开,否则创建文件,并创建文件的父目录
打开失败这抛出异常
必须为文件类型否则抛出异常
|
static byte[] |
readFileToByteArray(java.io.File file)
读取一个文件中的内容,返回byte[]
|
static java.io.InputStream |
readFileToInputStream(java.io.File file)
读取文件为InputStream
|
static java.lang.String |
readFileToString(java.io.File file)
读取文件内容为字符串
|
static java.lang.String |
readFileToString(java.io.File file,
java.lang.String encoding)
读取文件内容为字符串
|
static void |
write(byte[] data,
java.io.File file)
写入byte至文件中
如果文件已存在,会覆盖文件中的内容
|
static void |
write(byte[] data,
java.io.File file,
boolean append)
写入byte至文件中
|
static void |
write(java.lang.CharSequence data,
java.io.File file)
CharSequence内容写入指定的file文件中
文件不存在则新建文件
如果文件已存在,覆盖已有文件内容
|
static void |
write(java.lang.CharSequence data,
java.io.File file,
boolean append)
CharSequence内容写入指定的file文件中
文件不存在则新建文件
|
static void |
write(java.lang.CharSequence data,
java.io.File file,
boolean append,
java.lang.String encoding)
CharSequence内容写入指定的file文件中
文件不存在则新建文件
|
static void |
write(java.lang.CharSequence data,
java.io.File file,
java.lang.String encoding)
CharSequence内容写入指定的file文件中
文件不存在则新建文件
如果文件已存在,覆盖已有文件内容
|
static void |
writeLines(java.util.Collection<?> data,
java.io.File file)
写入行数据
如果文件存在,覆盖文件内容
|
static void |
writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append)
写入行数据
|
static void |
writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append,
java.lang.String encoding)
写入行数据
|
static void |
writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append,
java.lang.String encoding,
java.lang.String lineEnding)
写入行数据,集合中的一条数据占一行,如果位指定换行符,自动获取系统换行符
|
static void |
writeLines(java.util.Collection<?> data,
java.io.File file,
java.lang.String encoding)
写入行数据
如果文件存在,覆盖文件内容
|
static void |
writeString(java.lang.String data,
java.io.File file,
boolean append)
将字符串写入指定的file文件中
|
static void |
writeString(java.lang.String data,
java.io.File file,
boolean append,
java.lang.String encoding)
将字符串写入指定的file文件中
文件不存在则新建文件
|
static void |
writeString(java.lang.String data,
java.io.File file,
java.lang.String encoding)
将字符串写入指定的file中
如果文件中存在内容,则进行覆盖处理
追加写入字符串可以调用
writeString(String, File, boolean) |
public static final long ONE_KB
public static final long ONE_MB
public static final long FILE_COPY_BUFFER_SIZE
public static final long ONE_GB
public static final long ONE_TB
public static void moveFile(java.io.File source,
java.io.File target)
source - 源文件,必须为文件target - 目标文件,必须为文件java.lang.NullPointerException - source 或者 target为空时FileException - source文件不存在,source文件是目录,target已存在,target是目录public static void moveDirectory(java.io.File source,
java.io.File target)
source - 源文件夹,必须为文件夹target - 目标文件夹,必须为文件夹java.lang.NullPointerException - source或者target为空时FileException - source不存在,source不是文件夹,target已存在public static void moveFileToDirectory(java.io.File source,
java.io.File target)
source - 源文件,必须为文件类型target - 指定的目录,必须为目录FileException - FileExceptionpublic static void moveToDirectory(java.io.File source,
java.io.File target)
source - 源文件/文件夹target - 指定的目录,必须为目录FileException - FileExceptionpublic static void moveDirectoryToDirectory(java.io.File source,
java.io.File target)
source - 源文件夹,必须为目录/文件夹target - 指定的目录/文件夹,必须为目录/文件夹FileException - FileExceptionpublic static void copyFile(java.io.File source,
java.io.File target)
source - 源文件,必须为文件target - 目标文件,必须为文件FileException - source和target路径一样,source不存在java.lang.NullPointerException - source或target为空public static void copyDirectory(java.io.File source,
java.io.File target)
source - 源文件夹,必须为文件夹target - 目标文件夹,必须为文件夹FileException - source和target唯一绝对路径一样,source不存在public static boolean deleteQuietly(java.io.File file)
file - 要删除的目标文件public static boolean cleanDirectory(java.io.File directory)
directory - 指定文件夹FileException - FileExceptionpublic static boolean equalsCanonicalPath(java.io.File file1,
java.io.File file2)
file1 - 第一个文件file2 - 第二个文件FileException - IO异常public static void copyFileToDirectory(java.io.File source,
java.io.File target)
source - 源文件,必须为文件类型target - 目标文件夹,必须是文件夹类型FileException - FileExceptionpublic static void copyDirectoryToDirectory(java.io.File source,
java.io.File target)
source - 源文件夹,必须为文件夹/目录target - 目标文件夹,必须是文件夹/目录FileException - FileExceptionpublic static java.io.FileOutputStream openOutputStream(java.io.File file,
boolean append)
file - 指定的文件append - 是否为文件追加内容操作,如果append=true,则内容将添加到文件的末尾而不是进行覆盖FileException - FileExceptionpublic static void writeString(java.lang.String data,
java.io.File file,
java.lang.String encoding)
writeString(String, File, boolean)data - 写入的字符串file - 指定的文件encoding - 编码格式,调用String.getBytes(String)public static void writeString(java.lang.String data,
java.io.File file,
boolean append)
data - 写入的字符串file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖public static void writeString(java.lang.String data,
java.io.File file,
boolean append,
java.lang.String encoding)
data - 要写入的字符串file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖encoding - 编码格式,调用String.getBytes(String)public static void write(java.lang.CharSequence data,
java.io.File file,
boolean append,
java.lang.String encoding)
data - 写入的数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖encoding - 编码格式public static void write(java.lang.CharSequence data,
java.io.File file,
boolean append)
data - 写入的数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖public static void write(java.lang.CharSequence data,
java.io.File file,
java.lang.String encoding)
data - 写入的数据file - 指定的文件encoding - 编码格式public static void write(java.lang.CharSequence data,
java.io.File file)
data - 写入的数据file - 指定的文件public static void writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append,
java.lang.String encoding,
java.lang.String lineEnding)
data - 写入的集合数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖encoding - 编码格式lineEnding - 换行符,为空默认获取系统换行符public static void writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append,
java.lang.String encoding)
data - 写入的集合数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖encoding - 换行符,为空默认获取系统换行符public static void writeLines(java.util.Collection<?> data,
java.io.File file,
boolean append)
data - 写入的集合数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖public static void writeLines(java.util.Collection<?> data,
java.io.File file)
data - 写入的集合数据file - 指定的文件public static void writeLines(java.util.Collection<?> data,
java.io.File file,
java.lang.String encoding)
data - 写入的集合数据file - 指定的文件encoding - 编码格式public static void write(byte[] data,
java.io.File file,
boolean append)
data - 写入的数据file - 指定的文件append - 是否为追加方式写入,如果append=true,则内容将添加到文件的末尾而不是进行覆盖public static void write(byte[] data,
java.io.File file)
data - 写入的数据file - 指定的文件public static java.io.FileInputStream openInputStream(java.io.File file)
file - 指定的文件,不能为空,不能为文件夹/目录public static byte[] readFileToByteArray(java.io.File file)
file - 读取的文件public static java.lang.String readFileToString(java.io.File file)
file - 读取的文件public static java.lang.String readFileToString(java.io.File file,
java.lang.String encoding)
file - 读取的文件encoding - 编码格式public static java.lang.String getCanonicalPath(java.io.File file)
file - 被获取路径的文件IORuntimeException - IO异常public static java.io.InputStream readFileToInputStream(java.io.File file)
file - 被读取文件InputStreampublic static boolean isSub(java.io.File parent,
java.io.File sub)
parent - 父目录sub - 子目录public static boolean isSub(java.nio.file.Path parent,
java.nio.file.Path sub)
parent - 父pathsub - 子path