public class FileUtil
extends java.lang.Object
| 构造器和说明 |
|---|
FileUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static void |
copyDirToDir(java.io.File srcDir,
java.io.File destDir,
boolean isOverride)
递归拷贝源目录到目标目录
|
static void |
copyDirToDir(java.lang.String srcDir,
java.lang.String destDir)
拷贝目录到目标目录,默认覆盖
|
static void |
copyFile(java.io.File srcFile,
java.io.File destFile) |
static void |
copyFile(java.io.File srcFile,
java.io.File destFile,
boolean isOverride) |
static void |
copyFile(java.lang.String srcFile,
java.lang.String destFile)
拷贝源文件(文件或者文件夹)为目标文件, 默认覆盖
|
static void |
copyFileToDir(java.io.File srcFile,
java.io.File destDir,
boolean isOverride)
拷贝文件到目标目录
|
static void |
copyFileToDir(java.lang.String srcFile,
java.lang.String destDir)
拷贝源文件到目标目录, 同名可覆盖
|
static java.io.File |
createFile(java.io.File file)
直接创建文件
|
static java.io.File |
createFile(java.io.File file,
boolean createParentDirIfNotExist,
boolean createFileIfNotExist) |
static java.nio.file.Path |
createFile(java.nio.file.Path path)
直接创建文件
|
static java.nio.file.Path |
createFile(java.nio.file.Path path,
boolean createParentDirIfNotExist,
boolean createFileIfNotExist)
创建文件
|
static java.io.File |
createFileIfNotExist(java.io.File file)
如果文件或者父目录不存在则创建
|
static java.nio.file.Path |
createFileIfNotExist(java.nio.file.Path path)
如果文件或者父目录不存在则创建
|
static boolean |
deleteDir(java.io.File dir) |
static boolean |
deleteDir(java.io.File dir,
boolean forceDelete)
删除目录
|
static boolean |
deleteDir(java.nio.file.Path dir) |
static boolean |
deleteDir(java.nio.file.Path dir,
boolean forceDelete) |
static boolean |
deleteDir(java.lang.String dir) |
static boolean |
deleteDir(java.lang.String dir,
boolean forceDelete) |
static boolean |
deleteFile(java.io.File file)
删除文件,非目录
|
static boolean |
exists(java.io.File file)
文件是否存在
|
static boolean |
exists(java.nio.file.Path file) |
static boolean |
exists(java.lang.String file)
判断文件是否存在
|
static java.io.File |
file(java.io.File parent,
java.lang.String path)
创建File对象
|
static java.io.File |
file(java.lang.String filename)
创建File对象
|
static java.io.File |
file(java.lang.String parent,
java.lang.String path)
创建File对象
|
static java.lang.String |
getAbsolutePath(java.lang.String path)
获取绝对路径,相对于ClassPath的目录
如果给定就是绝对路径,则返回原路径,原路径把所有\替换为/ 兼容Spring风格的路径表示,例如:classpath:config/example.setting也会被识别后转换 |
static java.lang.String |
getAbsolutePath(java.lang.String path,
java.lang.Class<?> baseClass)
获取绝对路径
此方法不会判定给定路径是否有效(文件或目录存在) |
static boolean |
isAbsolutePath(java.lang.String path)
给定路径已经是绝对路径
此方法并没有针对路径做标准化,建议先执行 normalize(String)方法标准化路径后判断 |
static boolean |
isSameFile(java.io.File file1,
java.io.File file2)
比较两个文件是否同一个文件
|
static boolean |
isSameFile(java.nio.file.Path file1,
java.nio.file.Path file2)
比较两个文件是否同一个文件
|
static java.io.File |
mergeFiles(java.io.File[] files,
java.io.File outputFile)
合并多个文件
|
static java.io.File |
mergeFiles(java.io.File[] files,
java.io.File outputFile,
byte[] conjunction) |
static java.io.File |
mergeFiles(java.io.File[] files,
java.io.File outputFile,
byte[] conjunction,
byte[] prefix,
byte[] suffix)
合并多个文件
|
static java.io.File |
mergeFiles(java.io.File[] files,
java.io.File outputFile,
java.lang.String conjunction)
合并多个文件
|
static java.io.File |
mergeFiles(java.io.File[] files,
java.io.File outputFile,
java.lang.String conjunction,
java.lang.String prefix,
java.lang.String suffix)
合并多个文件
|
static java.io.File |
mkdir(java.io.File dir)
创建单个目录
|
static java.io.File |
mkdir(java.lang.String dir) |
static java.io.File |
mkdirs(java.io.File dirs)
创建所有目录
|
static java.io.File |
mkdirs(java.lang.String dirs)
创建所有目录
|
static java.io.File |
move(java.io.File srcFile,
java.io.File destFile)
move src file to dest file; it will throw exception if target file exist!
|
static java.io.File |
move(java.io.File srcFile,
java.io.File destFile,
boolean isOverride)
move src file to dest file
|
static java.io.File |
moveToDir(java.io.File srcFile,
java.io.File destFile,
boolean isOverride)
移动源文件到目标目录
|
static java.io.BufferedInputStream |
newBufferedInputStream(java.io.File file)
获得输入流
|
static java.io.BufferedInputStream |
newBufferedInputStream(java.lang.String path)
获得输入流
|
static java.io.BufferedOutputStream |
newBufferedOutputStream(java.io.File file) |
static java.io.BufferedReader |
newBufferedReader(java.io.File file)
根据文件创建BufferedReader
|
static java.io.BufferedReader |
newBufferedReader(java.io.File file,
java.nio.charset.Charset charset)
根据文件创建BufferedReader
|
static java.io.BufferedWriter |
newBufferedWriter(java.io.File file) |
static java.io.BufferedWriter |
newBufferedWriter(java.io.File file,
java.nio.charset.Charset charset) |
static java.lang.String |
normalize(java.lang.String filename) |
static java.lang.String |
probeContentType(java.io.File file)
检测文件类型
|
static java.lang.String |
probeContentType(java.nio.file.Path path) |
static byte[] |
read(java.io.File file)
读取文件
|
static java.util.List<java.lang.String> |
readAllLines(java.io.File file,
java.nio.charset.Charset charset)
指定编码读取文件所有行
|
static java.util.List<java.lang.String> |
readLines(java.io.File file)
默认编码读取文件所有行
|
static java.util.List<java.lang.String> |
readLines(java.io.File file,
java.nio.charset.Charset charset,
java.util.function.Predicate<java.lang.String> predicate)
指定读取文件行
|
static java.util.List<java.lang.String> |
readLines(java.io.File file,
java.util.function.Predicate<java.lang.String> predicate)
默认编码读取文件行
|
static java.lang.String |
readStr(java.io.File file)
UTF-8编码读取文件
|
static java.lang.String |
readStr(java.io.File file,
java.nio.charset.Charset charset)
读取内容
|
static java.io.File |
rename(java.io.File file,
java.lang.String newName)
rename a new name for file; it will throw a exception if a file with new name exists
|
static java.io.File |
rename(java.io.File file,
java.lang.String newName,
boolean isOverride)
rename a new name for file
|
static long |
size(java.io.File file) |
static long |
size(java.nio.file.Path path) |
static long |
size(java.lang.String file) |
static java.util.List<java.io.File> |
splitFile(java.io.File file,
long splitFileSize,
java.io.File outputDir)
分割文件成多个文件; 多个分割文件会以0,1,2,3....结尾
|
static java.nio.file.Path |
toPath(java.io.File file)
获取文件对应的path
|
static java.io.File |
touch(java.io.File file)
Implements the Unix "touch" utility.
|
static java.io.File |
touch(java.lang.String file) |
static java.io.File |
write(java.io.File file,
byte[] bytes)
写文件
|
static java.io.File |
write(java.io.File file,
java.io.InputStream inputStream) |
static void |
writeLines(java.io.File file,
java.util.List<java.lang.String> lines) |
static void |
writeLines(java.io.File file,
java.util.List<java.lang.String> lines,
java.nio.charset.Charset cs) |
static void |
writeLines(java.nio.file.Path path,
java.util.List<java.lang.String> lines) |
static void |
writeLines(java.nio.file.Path path,
java.util.List<java.lang.String> lines,
java.nio.charset.Charset cs) |
public static boolean isSameFile(java.io.File file1,
java.io.File file2)
file1 - 文件1file2 - 文件2public static boolean isSameFile(java.nio.file.Path file1,
java.nio.file.Path file2)
file1 - 文件1file2 - 文件2public static java.io.File file(java.lang.String filename)
filename - 文件名public static java.io.File file(java.lang.String parent,
java.lang.String path)
parent - 父目录path - 文件路径public static java.io.File file(java.io.File parent,
java.lang.String path)
parent - 父文件对象path - 文件路径public static boolean exists(java.io.File file)
file - filepublic static boolean exists(java.lang.String file)
file - 文件路径public static boolean exists(java.nio.file.Path file)
public static java.io.File mergeFiles(java.io.File[] files,
java.io.File outputFile,
byte[] conjunction,
byte[] prefix,
byte[] suffix)
files - 待合并的文件outputFile - 输出文件conjunction - 文件分割内容prefix - 前缀suffix - 后缀public static java.io.File mergeFiles(java.io.File[] files,
java.io.File outputFile,
byte[] conjunction)
public static java.io.File mergeFiles(java.io.File[] files,
java.io.File outputFile,
java.lang.String conjunction,
java.lang.String prefix,
java.lang.String suffix)
files - 待合并的文件outputFile - 输出文件conjunction - 连接字符prefix - 前缀suffix - 后缀public static java.io.File mergeFiles(java.io.File[] files,
java.io.File outputFile,
java.lang.String conjunction)
files - 待合并的文件outputFile - 输出文件conjunction - 连接字符public static java.io.File mergeFiles(java.io.File[] files,
java.io.File outputFile)
files - 待合并的文件outputFile - 输出文件public static java.util.List<java.io.File> splitFile(java.io.File file,
long splitFileSize,
java.io.File outputDir)
file - 待分割文件splitFileSize - 分割后文件的限制大小,byte长度outputDir - 输出目录public static java.io.File mkdirs(java.lang.String dirs)
dirs - 多级目录public static java.io.File mkdirs(java.io.File dirs)
dirs - 要创建的目录public static java.io.File mkdir(java.lang.String dir)
mkdir(File)public static java.io.File mkdir(java.io.File dir)
public static java.io.BufferedReader newBufferedReader(java.io.File file,
java.nio.charset.Charset charset)
file - 文件charset - 编码BufferedReaderpublic static java.io.BufferedReader newBufferedReader(java.io.File file)
file - 文件BufferedReaderpublic static java.io.BufferedWriter newBufferedWriter(java.io.File file,
java.nio.charset.Charset charset)
public static java.io.BufferedWriter newBufferedWriter(java.io.File file)
public static java.io.BufferedInputStream newBufferedInputStream(java.io.File file)
file - 文件IORuntimeException - 文件未找到public static java.io.BufferedInputStream newBufferedInputStream(java.lang.String path)
path - 文件路径IORuntimeException - 文件未找到public static java.io.BufferedOutputStream newBufferedOutputStream(java.io.File file)
public static java.io.File touch(java.lang.String file)
touch(File)public static java.io.File touch(java.io.File file)
File
with size 0 or, if the File exists already, it is opened and
closed without modifying it, but updating the File date and time.public static java.io.File createFile(java.io.File file)
throws java.io.IOException
file - filejava.io.IOException - I/O异常public static java.nio.file.Path createFile(java.nio.file.Path path)
throws java.io.IOException
path - pathjava.io.IOException - I/O异常public static java.io.File createFileIfNotExist(java.io.File file)
throws java.io.IOException
file - filejava.io.IOException - I/O异常public static java.nio.file.Path createFileIfNotExist(java.nio.file.Path path)
throws java.io.IOException
path - pathjava.io.IOException - I/O异常public static java.nio.file.Path createFile(java.nio.file.Path path,
boolean createParentDirIfNotExist,
boolean createFileIfNotExist)
throws java.io.IOException
path - pathcreateParentDirIfNotExist - 是否父目录不存则创建createFileIfNotExist - true:不存在才创建文件 false:不管存不存在都创建文件java.io.IOException - I/O异常public static java.io.File createFile(java.io.File file,
boolean createParentDirIfNotExist,
boolean createFileIfNotExist)
throws java.io.IOException
java.io.IOExceptionpublic static void copyFile(java.lang.String srcFile,
java.lang.String destFile)
throws java.io.IOException
srcFile - 源文件destFile - 目标文件java.io.IOException - cannot copy filepublic static void copyFile(java.io.File srcFile,
java.io.File destFile)
throws java.io.IOException
java.io.IOExceptionpublic static void copyFile(java.io.File srcFile,
java.io.File destFile,
boolean isOverride)
throws java.io.IOException
java.io.IOExceptionpublic static void copyFileToDir(java.io.File srcFile,
java.io.File destDir,
boolean isOverride)
throws java.io.IOException
srcFile - 源文件destDir - 目标目录isOverride - 同名文件是否覆盖java.io.IOExceptionpublic static void copyFileToDir(java.lang.String srcFile,
java.lang.String destDir)
throws java.io.IOException
srcFile - 源文件destDir - 目标目录java.io.IOExceptionpublic static void copyDirToDir(java.lang.String srcDir,
java.lang.String destDir)
throws java.io.IOException
srcDir - 源目录destDir - 目标目录java.io.IOExceptionpublic static void copyDirToDir(java.io.File srcDir,
java.io.File destDir,
boolean isOverride)
throws java.io.IOException
srcDir - 源目录destDir - 目标目录isOverride - 重名是否覆盖java.io.IOExceptionpublic static java.io.File move(java.io.File srcFile,
java.io.File destFile,
boolean isOverride)
srcFile - source filedestFile - target fileisOverride - override if target file exists; it will throw exception if exist!public static java.io.File move(java.io.File srcFile,
java.io.File destFile)
srcFile - source filedestFile - target filepublic static java.io.File moveToDir(java.io.File srcFile,
java.io.File destFile,
boolean isOverride)
srcFile - 源文件destFile - 目标目录isOverride - 是否覆盖; 为true的情况下,如果目标文件存在,则报错public static java.io.File rename(java.io.File file,
java.lang.String newName,
boolean isOverride)
file - filenewName - new nameisOverride - override if file existpublic static java.io.File rename(java.io.File file,
java.lang.String newName)
file - filenewName - new namepublic static boolean deleteFile(java.io.File file)
file - 文件,非目录public static boolean deleteDir(java.nio.file.Path dir,
boolean forceDelete)
public static boolean deleteDir(java.nio.file.Path dir)
public static boolean deleteDir(java.io.File dir,
boolean forceDelete)
dir - 目录forceDelete - 如果目录层次太少,不允许删除, 防止误删除public static boolean deleteDir(java.io.File dir)
public static boolean deleteDir(java.lang.String dir,
boolean forceDelete)
public static boolean deleteDir(java.lang.String dir)
public static java.lang.String getAbsolutePath(java.lang.String path)
path - 相对路径public static java.lang.String getAbsolutePath(java.lang.String path,
java.lang.Class<?> baseClass)
path - 相对路径baseClass - 相对路径所相对的类public static java.lang.String probeContentType(java.io.File file)
file - filepublic static java.lang.String probeContentType(java.nio.file.Path path)
public static java.nio.file.Path toPath(java.io.File file)
public static java.io.File write(java.io.File file,
byte[] bytes)
file - 文件对象bytes - 内容public static java.io.File write(java.io.File file,
java.io.InputStream inputStream)
public static void writeLines(java.io.File file,
java.util.List<java.lang.String> lines,
java.nio.charset.Charset cs)
public static void writeLines(java.io.File file,
java.util.List<java.lang.String> lines)
public static void writeLines(java.nio.file.Path path,
java.util.List<java.lang.String> lines)
public static void writeLines(java.nio.file.Path path,
java.util.List<java.lang.String> lines,
java.nio.charset.Charset cs)
public static byte[] read(java.io.File file)
file - 文件对象public static java.lang.String readStr(java.io.File file,
java.nio.charset.Charset charset)
file - 文件对象charset - 编码public static java.lang.String readStr(java.io.File file)
file - 文件public static java.util.List<java.lang.String> readAllLines(java.io.File file,
java.nio.charset.Charset charset)
file - 文件对象charset - 编码public static java.util.List<java.lang.String> readLines(java.io.File file)
file - 文件对象public static java.util.List<java.lang.String> readLines(java.io.File file,
java.nio.charset.Charset charset,
java.util.function.Predicate<java.lang.String> predicate)
file - 文件对象charset - 指定编码predicate - 判定这行是否需要public static java.util.List<java.lang.String> readLines(java.io.File file,
java.util.function.Predicate<java.lang.String> predicate)
file - 文件对象predicate - 判定这行是否需要public static java.lang.String normalize(java.lang.String filename)
public static boolean isAbsolutePath(java.lang.String path)
normalize(String)方法标准化路径后判断path - 需要检查的Pathpublic static long size(java.io.File file)
throws java.io.IOException
java.io.IOExceptionpublic static long size(java.nio.file.Path path)
throws java.io.IOException
java.io.IOExceptionpublic static long size(java.lang.String file)
throws java.io.IOException
java.io.IOException