本文整理了Java中cn.hutool.core.io.FileUtil
类的一些代码示例,展示了FileUtil
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。FileUtil
类的具体详情如下:
包路径:cn.hutool.core.io.FileUtil
类名称:FileUtil
[英]文件工具类
[中]文件工具类
代码示例来源:origin: looly/hutool
/**
* 获得一个输出流对象
*
* @param path 输出到的文件路径,绝对路径
* @return 输出流对象
* @throws IORuntimeException IO异常
*/
public static BufferedOutputStream getOutputStream(String path) throws IORuntimeException {
return getOutputStream(touch(path));
}
代码示例来源:origin: looly/hutool
/**
* 创建文件及其父目录,如果这个文件存在,直接返回这个文件<br>
* 此方法不对File对象类型做判断,如果File不存在,无法判断其类型
*
* @param parent 父文件对象
* @param path 文件路径
* @return File
* @throws IORuntimeException IO异常
*/
public static File touch(String parent, String path) throws IORuntimeException {
return touch(file(parent, path));
}
代码示例来源:origin: looly/hutool
/**
* 获取绝对路径,相对于ClassPath的目录<br>
* 如果给定就是绝对路径,则返回原路径,原路径把所有\替换为/<br>
* 兼容Spring风格的路径表示,例如:classpath:config/example.setting也会被识别后转换
*
* @param path 相对路径
* @return 绝对路径
*/
public static String getAbsolutePath(String path) {
return getAbsolutePath(path, null);
}
代码示例来源:origin: looly/hutool
/**
* 删除文件或者文件夹<br>
* 路径如果为相对路径,会转换为ClassPath路径! 注意:删除文件夹时不会判断文件夹是否为空,如果不空则递归删除子文件或文件夹<br>
* 某个文件删除失败会终止删除操作
*
* @param fullFileOrDirPath 文件或者目录的路径
* @return 成功与否
* @throws IORuntimeException IO异常
*/
public static boolean del(String fullFileOrDirPath) throws IORuntimeException {
return del(file(fullFileOrDirPath));
}
代码示例来源:origin: looly/hutool
/**
* 读取文件所有数据<br>
* 文件的长度不能超过Integer.MAX_VALUE
*
* @param filePath 文件路径
* @return 字节码
* @throws IORuntimeException IO异常
* @since 3.2.0
*/
public static byte[] readBytes(String filePath) throws IORuntimeException {
return readBytes(file(filePath));
}
代码示例来源:origin: looly/hutool
/**
* 获得 {@link ZipOutputStream}
*
* @param zipFile 压缩文件
* @param charset 编码
* @return {@link ZipOutputStream}
*/
private static ZipOutputStream getZipOutputStream(File zipFile, Charset charset) {
return getZipOutputStream(FileUtil.getOutputStream(zipFile), charset);
}
代码示例来源:origin: looly/hutool
/**
* 获得一个文件读取器
*
* @param file 文件
* @param charsetName 字符集
* @return BufferedReader对象
* @throws IORuntimeException IO异常
*/
public static BufferedReader getReader(File file, String charsetName) throws IORuntimeException {
return IoUtil.getReader(getInputStream(file), charsetName);
}
代码示例来源:origin: looly/hutool
/**
* base64编码
*
* @param file 被编码base64的文件
* @return 被加密后的字符串
* @since 4.0.9
*/
public static String encode(File file) {
return Base64Encoder.encode(FileUtil.readBytes(file));
}
代码示例来源:origin: looly/hutool
/**
* 获得输入流
*
* @param path 文件路径
* @return 输入流
* @throws IORuntimeException 文件未找到
*/
public static BufferedInputStream getInputStream(String path) throws IORuntimeException {
return getInputStream(file(path));
}
代码示例来源:origin: looly/hutool
/**
* 列出目录文件<br>
* 给定的绝对路径不能是压缩包中的路径
*
* @param path 目录绝对路径或者相对路径
* @return 文件列表(包含目录)
*/
public static File[] ls(String path) {
if (path == null) {
return null;
}
path = getAbsolutePath(path);
File file = file(path);
if (file.isDirectory()) {
return file.listFiles();
}
throw new IORuntimeException(StrUtil.format("Path [{}] is not directory!", path));
}
代码示例来源:origin: looly/hutool
/**
* 获取文件扩展名,扩展名不带“.”
*
* @param file 文件
* @return 扩展名
*/
public static String extName(File file) {
if (null == file) {
return null;
}
if (file.isDirectory()) {
return null;
}
return extName(file.getName());
}
代码示例来源:origin: looly/hutool
tempFile = FileUtil.createTempFile(TMP_FILE_PREFIX, TMP_FILE_SUFFIX, FileUtil.touch(setting.tmpUploadPath), false);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(tempFile));
if (data != null) {
代码示例来源:origin: looly/hutool
/**
* 读取文件内容
*
* @param path 文件路径
* @param charsetName 字符集
* @return 内容
* @throws IORuntimeException IO异常
*/
public static String readString(String path, String charsetName) throws IORuntimeException {
return readString(file(path), charsetName);
}
代码示例来源:origin: looly/hutool
copy(src, dest, isOverride);
} catch (Exception e) {
throw new IORuntimeException(StrUtil.format("Move [{}] to [{}] failed!", src, dest), e);
del(src);
代码示例来源:origin: looly/hutool
/**
* 获得一个带缓存的写入对象
*
* @param path 输出路径,绝对路径
* @param charset 字符集
* @param isAppend 是否追加
* @return BufferedReader对象
* @throws IORuntimeException IO异常
*/
public static BufferedWriter getWriter(String path, Charset charset, boolean isAppend) throws IORuntimeException {
return getWriter(touch(path), charset, isAppend);
}
代码示例来源:origin: looly/hutool
/**
* 写数据到文件中
*
* @param data 数据
* @param path 目标文件
* @return 目标文件
* @throws IORuntimeException IO异常
*/
public static File writeBytes(byte[] data, String path) throws IORuntimeException {
return writeBytes(data, touch(path));
}
代码示例来源:origin: looly/hutool
/**
* 将String写入文件,追加模式
*
* @param content 写入的内容
* @param path 文件路径
* @param charset 字符集
* @return 写入的文件
* @throws IORuntimeException IO异常
*/
public static File appendString(String content, String path, String charset) throws IORuntimeException {
return appendString(content, touch(path), charset);
}
代码示例来源:origin: looly/hutool
/**
* 图像类型转换:GIF=》JPG、GIF=》PNG、PNG=》JPG、PNG=》GIF(X)、BMP=》PNG
*
* @param srcImageFile 源图像文件
* @param destImageFile 目标图像文件
*/
public static void convert(File srcImageFile, File destImageFile) {
Assert.notNull(srcImageFile);
Assert.notNull(destImageFile);
Assert.isFalse(srcImageFile.equals(destImageFile), "Src file is equals to dest file!");
final String srcExtName = FileUtil.extName(srcImageFile);
final String destExtName = FileUtil.extName(destImageFile);
if (StrUtil.equalsIgnoreCase(srcExtName, destExtName)) {
// 扩展名相同直接复制文件
FileUtil.copy(srcImageFile, destImageFile, true);
}
ImageOutputStream imageOutputStream = null;
try {
imageOutputStream = getImageOutputStream(destImageFile);
convert(read(srcImageFile), destExtName, imageOutputStream, StrUtil.equalsIgnoreCase(IMAGE_TYPE_PNG, srcExtName));
} finally {
IoUtil.close(imageOutputStream);
}
}
代码示例来源:origin: looly/hutool
/**
* 将String写入文件,覆盖模式
*
* @param content 写入的内容
* @param path 文件路径
* @param charset 字符集
* @return 写入的文件
* @throws IORuntimeException IO异常
*/
public static File writeString(String content, String path, Charset charset) throws IORuntimeException {
return writeString(content, touch(path), charset);
}
代码示例来源:origin: looly/hutool
/**
* 清空文件夹<br>
* 注意:清空文件夹时不会判断文件夹是否为空,如果不空则递归删除子文件或文件夹<br>
* 某个文件删除失败会终止删除操作
*
* @param directory 文件夹
* @return 成功与否
* @throws IORuntimeException IO异常
* @since 3.0.6
*/
public static boolean clean(File directory) throws IORuntimeException {
if (directory == null || directory.exists() == false || false == directory.isDirectory()) {
return true;
}
final File[] files = directory.listFiles();
boolean isOk;
for (File childFile : files) {
isOk = del(childFile);
if (isOk == false) {
// 删除一个出错则本次删除任务失败
return false;
}
}
return true;
}
内容来源于网络,如有侵权,请联系作者删除!