public class FileUtil extends Object
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
FileUtil.ReaderHandler<T>
Reader处理接口
|
| 限定符和类型 | 字段和说明 |
|---|---|
static String |
CLASS_EXT
Class文件扩展名
|
static String |
JAR_FILE_EXT
Jar文件扩展名
|
static String |
JAR_PATH_EXT
在Jar中的路径jar的扩展名形式
|
static String |
PATH_FILE_PRE
当Path为文件形式时, path会加入一个表示文件的前缀
|
| 构造器和说明 |
|---|
FileUtil() |
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> void |
appendLines(Collection<T> list,
String path,
String charset)
将列表写入文件,追加模式
|
static File |
appendString(String content,
File file,
String charset)
将String写入文件,追加模式
|
static File |
appendString(String content,
String path,
String charset)
将String写入文件,追加模式
|
static File |
copy(File src,
File dest,
boolean isOverride)
复制文件或目录
情况如下: 1、src和dest都为目录,则讲src下所有文件目录拷贝到dest下 2、src和dest都为文件,直接复制,名字为dest 3、src为文件,dest为目录,将src拷贝到dest目录下 |
static File |
copy(String srcPath,
String destPath,
boolean isOverride)
复制文件或目录
如果目标文件为目录,则将源文件以相同文件名拷贝到目标目录 |
static File |
createTempFile(File dir)
创建临时文件
创建后的文件名为 prefix[Randon].tmp |
static File |
createTempFile(File dir,
boolean isReCreat)
创建临时文件
创建后的文件名为 prefix[Randon].tmp |
static File |
createTempFile(String prefix,
String suffix,
File dir,
boolean isReCreat)
创建临时文件
创建后的文件名为 prefix[Randon].suffix From com.jodd.io.FileUtil |
static boolean |
del(File file)
删除文件或者文件夹
|
static boolean |
del(String fullFileOrDirPath)
删除文件或者文件夹
|
static boolean |
equals(File file1,
File file2)
检查两个文件是否是同一个文件
|
static boolean |
exist(File file)
判断文件是否存在,如果file为null,则返回false
|
static boolean |
exist(String path)
判断文件是否存在,如果path为null,则返回false
|
static boolean |
exist(String directory,
String regexp)
是否存在匹配文件
|
static String |
extName(File file)
获取文件扩展名
|
static String |
extName(String fileName)
获得文件的扩展名
|
static File |
file(File parent,
String path)
创建File对象
|
static File |
file(String path)
创建File对象,自动识别相对或绝对路径,相对路径将自动从ClassPath下寻找
|
static File |
file(String parent,
String path)
创建File对象
|
static File |
file(URI uri)
创建File对象
|
static String |
getAbsolutePath(File file)
获取标准的绝对路径
|
static String |
getAbsolutePath(String path)
获取绝对路径,相对于classes的根目录
如果给定就是绝对路径,则返回原路径,原路径把所有\替换为/ |
static String |
getAbsolutePath(String path,
Class<?> baseClass)
获取绝对路径
此方法不会判定给定路径是否有效(文件或目录存在) |
static BufferedInputStream |
getInputStream(File file)
获得输入流
|
static BufferedInputStream |
getInputStream(String path)
获得输入流
|
static BufferedOutputStream |
getOutputStream(File file)
获得一个输出流对象
|
static BufferedOutputStream |
getOutputStream(String path)
获得一个输出流对象
|
static PrintWriter |
getPrintWriter(File file,
String charset,
boolean isAppend)
获得一个打印写入对象,可以有print
|
static PrintWriter |
getPrintWriter(String path,
String charset,
boolean isAppend)
获得一个打印写入对象,可以有print
|
static BufferedReader |
getReader(File file,
Charset charset)
获得一个文件读取器
|
static BufferedReader |
getReader(File file,
String charsetName)
获得一个文件读取器
|
static BufferedReader |
getReader(String path,
Charset charset)
获得一个文件读取器
|
static BufferedReader |
getReader(String path,
String charsetName)
获得一个文件读取器
|
static BufferedReader |
getUtf8Reader(File file)
获得一个文件读取器
|
static BufferedReader |
getUtf8Reader(String path)
获得一个文件读取器
|
static BufferedWriter |
getWriter(File file,
Charset charset,
boolean isAppend)
获得一个带缓存的写入对象
|
static BufferedWriter |
getWriter(File file,
String charsetName,
boolean isAppend)
获得一个带缓存的写入对象
|
static BufferedWriter |
getWriter(String path,
Charset charset,
boolean isAppend)
获得一个带缓存的写入对象
|
static BufferedWriter |
getWriter(String path,
String charsetName,
boolean isAppend)
获得一个带缓存的写入对象
|
static int |
indexOfLastSeparator(String filePath)
获得最后一个文件路径分隔符的位置
|
static boolean |
isDirectory(File file)
判断是否为目录,如果file为null,则返回false
|
static boolean |
isDirectory(String path)
判断是否为目录,如果path为null,则返回false
|
static boolean |
isDirEmpty(File dir)
目录是否为空
|
static boolean |
isDirEmpty(Path dirPath)
目录是否为空
|
static boolean |
isEmpty(File file)
文件是否为空
目录:里面没有文件时为空 文件:文件大小为0时为空 |
static boolean |
isFile(File file)
判断是否为文件,如果file为null,则返回false
|
static boolean |
isFile(String path)
判断是否为文件,如果path为null,则返回false
|
static boolean |
isModifed(File file,
long lastModifyTime)
判断文件是否被改动
如果文件对象为 null 或者文件不存在,被视为改动 |
static boolean |
isNotEmpty(File file)
目录是否为空
|
static Date |
lastModifiedTime(File file)
指定文件最后修改时间
|
static Date |
lastModifiedTime(String path)
指定路径文件最后修改时间
|
static List<String> |
listFileNames(String path)
获得指定目录下所有文件
不会扫描子目录 |
static <T> T |
load(FileUtil.ReaderHandler<T> readerHandler,
String path,
String charset)
按照给定的readerHandler读取文件中的数据
|
static List<File> |
loopFiles(File file)
递归遍历目录以及子目录中的所有文件
|
static List<File> |
loopFiles(File file,
FileFilter fileFilter)
递归遍历目录以及子目录中的所有文件
|
static File[] |
ls(String path)
列出目录文件
给定的绝对路径不能是压缩包中的路径 |
static String |
mainName(File file)
返回主文件名
|
static String |
mainName(String fileName)
返回主文件名
|
static File |
mkdir(String dirPath)
创建文件夹,如果存在直接返回此文件夹
|
static File |
mkParentDirs(File file)
创建所给文件或目录的父目录
|
static File |
mkParentDirs(String path)
创建父文件夹,如果存在直接返回此文件夹
|
static void |
move(File src,
File dest,
boolean isOverride)
移动文件或者目录
|
static String |
normalize(String path)
修复路径
1. |
static String |
readableFileSize(File file)
可读的文件大小
|
static String |
readableFileSize(long size)
可读的文件大小
参考 http://stackoverflow.com/questions/3263892/format-file-size-as-mb-gb-etc |
static byte[] |
readBytes(File file)
读取文件所有数据
文件的长度不能超过Integer.MAX_VALUE |
static JSON |
readJSON(File file,
Charset charset)
读取JSON
|
static JSON |
readJSON(File file,
String charsetName)
读取JSON
|
static JSONArray |
readJSONArray(File file,
Charset charset)
读取JSONArray
|
static JSONArray |
readJSONArray(File file,
String charsetName)
读取JSONArray
|
static JSONObject |
readJSONObject(File file,
Charset charset)
读取JSONObject
|
static JSONObject |
readJSONObject(File file,
String charsetName)
读取JSONObject
|
static List<String> |
readLines(File file,
String charset)
从文件中读取每一行数据
|
static <T extends Collection<String>> |
readLines(File file,
String charset,
T collection)
从文件中读取每一行数据
|
static List<String> |
readLines(String path,
String charset)
从文件中读取每一行数据
|
static <T extends Collection<String>> |
readLines(String path,
String charset,
T collection)
从文件中读取每一行数据
|
static List<String> |
readLines(URL url,
String charset)
从文件中读取每一行数据
|
static <T extends Collection<String>> |
readLines(URL url,
String charset,
T collection)
从文件中读取每一行数据
|
static String |
readString(File file,
Charset charset)
读取文件内容
|
static String |
readString(File file,
String charsetName)
读取文件内容
|
static String |
readString(String path,
Charset charset)
读取文件内容
|
static String |
readString(String path,
String charsetName)
读取文件内容
|
static String |
readString(URL url,
String charset)
读取文件内容
|
static String |
readUtf8String(File file)
读取文件内容
|
static String |
readUtf8String(String path)
读取文件内容
|
static String |
subPath(String rootDir,
File file)
获得相对子路径
|
static String |
subPath(String rootDir,
String filePath)
获得相对子路径
|
static File |
touch(File file)
创建文件,如果这个文件存在,直接返回这个文件
|
static File |
touch(String fullFilePath)
创建文件,如果这个文件存在,直接返回这个文件
|
static File |
writeBytes(byte[] data,
File dest)
写数据到文件中
|
static File |
writeBytes(byte[] data,
File dest,
int off,
int len,
boolean append)
写入数据到文件
|
static File |
writeBytes(byte[] data,
String path)
写数据到文件中
|
static File |
writeFromStream(InputStream in,
File dest)
将流的内容写入文件
|
static File |
writeFromStream(InputStream in,
String fullFilePath)
将流的内容写入文件
|
static <T> void |
writeLines(Collection<T> list,
String path,
String charset)
将列表写入文件,覆盖模式
|
static <T> void |
writeLines(Collection<T> list,
String path,
String charset,
boolean isAppend)
将列表写入文件
|
static File |
writeString(String content,
File file,
String charset)
将String写入文件,覆盖模式
|
static File |
writeString(String content,
String path,
String charset)
将String写入文件,覆盖模式
|
static void |
writeToStream(File file,
OutputStream out)
将文件写入流中
|
static void |
writeToStream(String fullFilePath,
OutputStream out)
将流的内容写入文件
|
static File |
writeUtf8String(String content,
File file)
将String写入文件,覆盖模式,字符集为UTF-8
|
static File |
writeUtf8String(String content,
String path)
将String写入文件,覆盖模式,字符集为UTF-8
|
public static File[] ls(String path)
path - 目录绝对路径或者相对路径public static boolean isEmpty(File file)
file - 文件public static boolean isNotEmpty(File file)
file - 目录public static boolean isDirEmpty(Path dirPath)
dirPath - 目录UtilException - IOExceptionpublic static boolean isDirEmpty(File dir)
dir - 目录public static List<File> loopFiles(File file, FileFilter fileFilter)
file - 当前遍历文件fileFilter - 文件过滤规则对象,选择要保留的文件public static List<String> listFileNames(String path)
path - 相对ClassPath的目录或者绝对路径目录IOExceptionpublic static File file(String path)
path - 文件路径public static File file(String parent, String path)
parent - 父目录path - 文件路径public static File file(File parent, String path)
parent - 父文件对象path - 文件路径public static boolean exist(String path)
path - 文件路径public static boolean exist(File file)
file - 文件public static boolean exist(String directory, String regexp)
directory - 文件夹路径regexp - 文件夹中所包含文件名的正则表达式public static Date lastModifiedTime(String path)
path - 路径public static File touch(String fullFilePath) throws IOException
fullFilePath - 文件的全路径,使用POSIX风格IOExceptionpublic static File touch(File file) throws IOException
file - 文件对象IOExceptionpublic static File mkParentDirs(String path)
path - 文件夹路径,使用POSIX格式,无论哪个平台public static boolean del(String fullFileOrDirPath) throws IOException
fullFileOrDirPath - 文件或者目录的路径IOExceptionpublic static boolean del(File file) throws IOException
file - 文件对象IOExceptionpublic static File mkdir(String dirPath)
dirPath - 文件夹路径,使用POSIX格式,无论哪个平台public static File createTempFile(File dir) throws IOException
dir - 临时文件创建的所在目录IOExceptionpublic static File createTempFile(File dir, boolean isReCreat) throws IOException
dir - 临时文件创建的所在目录isReCreat - 是否重新创建文件(删掉原来的,创建新的)IOExceptionpublic static File createTempFile(String prefix, String suffix, File dir, boolean isReCreat) throws IOException
prefix - 前缀,至少3个字符suffix - 后缀,如果null则使用默认.tmpdir - 临时文件创建的所在目录isReCreat - 是否重新创建文件(删掉原来的,创建新的)IOExceptionpublic static File copy(String srcPath, String destPath, boolean isOverride) throws IOException
srcPath - 源文件或目录destPath - 目标文件或目录isOverride - 是否覆盖目标文件IOExceptionpublic static File copy(File src, File dest, boolean isOverride) throws IOException
src - 源文件dest - 目标文件或目录isOverride - 是否覆盖目标文件IOExceptionpublic static void move(File src, File dest, boolean isOverride) throws IOException
src - 源文件或者目录dest - 目标文件或者目录isOverride - 是否覆盖目标IOExceptionpublic static String getAbsolutePath(String path, Class<?> baseClass)
path - 相对路径baseClass - 相对路径所相对的类public static String getAbsolutePath(String path)
path - 相对路径public static boolean isDirectory(String path)
path - 文件路径public static boolean isDirectory(File file)
file - 文件public static boolean isFile(String path)
path - 文件路径public static boolean isFile(File file)
file - 文件public static boolean equals(File file1, File file2)
file1 - 文件1file2 - 文件2public static int indexOfLastSeparator(String filePath)
filePath - 文件路径public static boolean isModifed(File file, long lastModifyTime)
file - 文件对象lastModifyTime - 上次的改动时间public static String normalize(String path)
path - 原路径public static String subPath(String rootDir, String filePath)
rootDir - 绝对父路径filePath - 文件路径public static String subPath(String rootDir, File file)
rootDir - 绝对父路径file - 文件public static BufferedInputStream getInputStream(File file) throws FileNotFoundException
file - 文件FileNotFoundExceptionpublic static BufferedInputStream getInputStream(String path) throws FileNotFoundException
path - 文件路径FileNotFoundExceptionpublic static BufferedReader getUtf8Reader(File file) throws IOException
file - 文件IOExceptionpublic static BufferedReader getUtf8Reader(String path) throws IOException
path - 文件路径IOExceptionpublic static BufferedReader getReader(File file, String charsetName) throws IOException
file - 文件charsetName - 字符集IOExceptionpublic static BufferedReader getReader(File file, Charset charset) throws IOException
file - 文件charset - 字符集IOExceptionpublic static BufferedReader getReader(String path, String charsetName) throws IOException
path - 绝对路径charsetName - 字符集IOExceptionpublic static BufferedReader getReader(String path, Charset charset) throws IOException
path - 绝对路径charset - 字符集IOExceptionpublic static byte[] readBytes(File file) throws IOException
file - 文件IOExceptionpublic static String readUtf8String(File file) throws IOException
file - 文件IOExceptionpublic static String readUtf8String(String path) throws IOException
path - 文件路径IOExceptionpublic static String readString(File file, String charsetName) throws IOException
file - 文件charsetName - 字符集IOExceptionpublic static String readString(File file, Charset charset) throws IOException
file - 文件charset - 字符集IOExceptionpublic static String readString(String path, String charsetName) throws IOException
path - 文件路径charsetName - 字符集IOExceptionpublic static String readString(String path, Charset charset) throws IOException
path - 文件路径charset - 字符集IOExceptionpublic static String readString(URL url, String charset) throws IOException
url - 文件URLcharset - 字符集IOExceptionpublic static <T extends Collection<String>> T readLines(String path, String charset, T collection) throws IOException
path - 文件路径charset - 字符集collection - 集合IOExceptionpublic static <T extends Collection<String>> T readLines(File file, String charset, T collection) throws IOException
file - 文件路径charset - 字符集collection - 集合IOExceptionpublic static <T extends Collection<String>> T readLines(URL url, String charset, T collection) throws IOException
url - 文件的URLcharset - 字符集collection - 集合IOExceptionpublic static List<String> readLines(URL url, String charset) throws IOException
url - 文件的URLcharset - 字符集IOExceptionpublic static List<String> readLines(String path, String charset) throws IOException
path - 文件路径charset - 字符集IOExceptionpublic static List<String> readLines(File file, String charset) throws IOException
file - 文件charset - 字符集IOExceptionpublic static JSON readJSON(File file, Charset charset) throws IOException
file - JSON文件charset - 编码IOExceptionpublic static JSON readJSON(File file, String charsetName) throws IOException
file - JSON文件charsetName - 编码IOExceptionpublic static JSONObject readJSONObject(File file, Charset charset) throws IOException
file - JSON文件charset - 编码IOExceptionpublic static JSONObject readJSONObject(File file, String charsetName) throws IOException
file - JSON文件charsetName - 编码IOExceptionpublic static JSONArray readJSONArray(File file, Charset charset) throws IOException
file - JSON文件charset - 编码IOExceptionpublic static JSONArray readJSONArray(File file, String charsetName) throws IOException
file - JSON文件charsetName - 编码IOExceptionpublic static <T> T load(FileUtil.ReaderHandler<T> readerHandler, String path, String charset) throws IOException
readerHandler - Reader处理类path - 文件的绝对路径charset - 字符集IOExceptionpublic static BufferedOutputStream getOutputStream(File file) throws IOException
file - 文件IOExceptionpublic static BufferedOutputStream getOutputStream(String path) throws IOException
path - 输出到的文件路径,绝对路径IOExceptionpublic static BufferedWriter getWriter(String path, String charsetName, boolean isAppend) throws IOException
path - 输出路径,绝对路径charsetName - 字符集isAppend - 是否追加IOExceptionpublic static BufferedWriter getWriter(String path, Charset charset, boolean isAppend) throws IOException
path - 输出路径,绝对路径charset - 字符集isAppend - 是否追加IOExceptionpublic static BufferedWriter getWriter(File file, String charsetName, boolean isAppend) throws IOException
file - 输出文件charsetName - 字符集isAppend - 是否追加IOExceptionpublic static BufferedWriter getWriter(File file, Charset charset, boolean isAppend) throws IOException
file - 输出文件charset - 字符集isAppend - 是否追加IOExceptionpublic static PrintWriter getPrintWriter(String path, String charset, boolean isAppend) throws IOException
path - 输出路径,绝对路径charset - 字符集isAppend - 是否追加IOExceptionpublic static PrintWriter getPrintWriter(File file, String charset, boolean isAppend) throws IOException
file - 文件charset - 字符集isAppend - 是否追加IOExceptionpublic static File writeUtf8String(String content, String path) throws IOException
content - 写入的内容path - 文件路径IOExceptionpublic static File writeUtf8String(String content, File file) throws IOException
content - 写入的内容file - 文件IOExceptionpublic static File writeString(String content, String path, String charset) throws IOException
content - 写入的内容path - 文件路径charset - 字符集IOExceptionpublic static File writeString(String content, File file, String charset) throws IOException
content - 写入的内容file - 文件charset - 字符集IOExceptionpublic static File appendString(String content, String path, String charset) throws IOException
content - 写入的内容path - 文件路径charset - 字符集IOExceptionpublic static File appendString(String content, File file, String charset) throws IOException
content - 写入的内容file - 文件charset - 字符集IOExceptionpublic static <T> void writeLines(Collection<T> list, String path, String charset) throws IOException
list - 列表path - 绝对路径charset - 字符集IOExceptionpublic static <T> void appendLines(Collection<T> list, String path, String charset) throws IOException
list - 列表path - 绝对路径charset - 字符集IOExceptionpublic static <T> void writeLines(Collection<T> list, String path, String charset, boolean isAppend) throws IOException
list - 列表path - 绝对路径charset - 字符集isAppend - 是否追加IOExceptionpublic static File writeBytes(byte[] data, String path) throws IOException
data - 数据path - 目标文件IOExceptionpublic static File writeBytes(byte[] data, File dest) throws IOException
dest - 目标文件data - 数据IOExceptionpublic static File writeBytes(byte[] data, File dest, int off, int len, boolean append) throws IOException
data - 数据dest - 目标文件off - len - append - IOExceptionpublic static File writeFromStream(InputStream in, File dest) throws IOException
dest - 目标文件in - 输入流IOExceptionpublic static File writeFromStream(InputStream in, String fullFilePath) throws IOException
in - 输入流fullFilePath - 文件绝对路径IOExceptionpublic static void writeToStream(File file, OutputStream out) throws IOException
file - 文件out - 流IOExceptionpublic static void writeToStream(String fullFilePath, OutputStream out) throws IOException
fullFilePath - 文件绝对路径out - 输出流IOExceptionpublic static String readableFileSize(long size)
size - Long类型大小Copyright © 2016. All rights reserved.