news 2026/4/16 21:53:14

Commons-io工具包与Hutool工具包

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Commons-io工具包与Hutool工具包

Commons-io

Commons-io是apache开源基金组织提供的一组有关IO操作的开源工具包

作用:提高I0流的开发效率。

FileUtils类(文件/文件夹相关)
static void copyFile(File srcFile,File destFile) 复制文件
static void copyDirectory(File srcDir,File destDir) 复制文件夹
static void copyDirectoryToDirectory(File srcDir, File destDir) 复制文件夹
static void deleteDirectory(File directory) 删除文件夹
static void cleanDirectory(File directory) 清空文件夹
static String readFileToString(File file, Charset encoding) 读取文件中的数据变成成字符串
static void write(File file, CharSequence data, String encoding) 写出数据

I0Utils类(流相关相关)
public static int copy(InputStream input, OutputStream output) 复制文件
public static int copyLarge(Reader input, Writer output) 复制大文件
public static String readLines(Reader input) 读取数据
public static void write(String data, OutputStream output) 写出数据

static void copyFile(File srcFile,File destFile) 复制文件

package commonsio;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class CommonsIODemo1 {
public static void main(String[] args) throws IOException {
File src=new File("..\\Myio\\a.txt");
File dest=new File("..\\Myio\\copy.txt");
FileUtils.copyFile(src,dest);
}
}

static void copyDirectory(File srcDir,File destDir) 复制文件夹

package commonsio;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class CommonsIODemo1 {
public static void main(String[] args) throws IOException {
File src=new File("E:\\111");
File dest=new File("E:\\222");
FileUtils.copyDirectory(src,dest);
}
}

static void copyDirectoryToDirectory(File srcDir, File destDir) 复制文件夹

这与上面的那个有什么区别呢?

package commonsio;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class CommonsIODemo1 {
public static void main(String[] args) throws IOException {
File src=new File("E:\\111");
File dest=new File("E:\\222");
FileUtils.copyToDirectory(src,dest);
}
}

直接将数据源的拷贝进了目的地文件夹的里面

static void deleteDirectory(File directory) 删除文件夹

package commonsio;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class CommonsIODemo1 {
public static void main(String[] args) throws IOException {
File src=new File("E:\\222");
FileUtils.deleteDirectory(src);
}
}

直接将文件删除

static void cleanDirectory(File directory) 清空文件夹

package commonsio;
import org.apache.commons.io.FileUtils;
import java.io.File;
import java.io.IOException;
public class CommonsIODemo1 {
public static void main(String[] args) throws IOException {
File src=new File("E:\\111");
FileUtils.cleanDirectory(src);
}
}

这是将文件夹中的内容清空

Hutool

相关类
IoUtil 流操作工具类
FileUtil 文件读写和操作的工具类
FileTypeUtil 文件类型判断工具类
WatchMonitor 目录、文件监听
ClassPathResource 针对ClassPath中资源的访问封装
FileReader 封装文件读取
Filewriter 封装文件写入

FileUtil 文件读写和操作的工具类

file:根据参数创建一个file对象
touch:根据参数创建文件
writeLines:把集合中的数据写出到文件中,覆盖模式。
appendLines:把集合中的数据写出到文件中,续写模式
readLines:指定字符编码,把文件中的数据,读到集合中。
readUtf8Lines:按照UTF-8的形式,把文件中的数据,读到集合中
copy:拷贝文件或者文件夹

file:根据参数创建一个file对象

package hutool;
import cn.hutool.core.io.FileUtil;
import java.io.File;
public class HutoolDemo1 {
public static void main(String[] args) {
File file = FileUtil.file("E:\\", "aaa", "bbb", "a.txt");
System.out.println(file);
}
}

touch:根据参数创建文件

如果没有父级路径,他会帮你把父级路径一起创建

package hutool;
import cn.hutool.core.io.FileUtil;
import java.io.File;
public class HutoolDemo1 {
public static void main(String[] args) {
File file = FileUtil.file("E:\\", "aaa", "bbb", "a.txt");
System.out.println(file);
File touch = FileUtil.touch(file);
System.out.println(touch);
}
}

writeLines:把集合中的数据写出到文件中,覆盖盖式。

package hutool;
import cn.hutool.core.io.FileUtil;
import java.io.File;
import java.util.ArrayList;
public class HutoolDemo1 {
public static void main(String[] args) {
ArrayList<String>list=new ArrayList<>();
list.add("aaa");
list.add("aaa");
list.add("aaa");
File file = FileUtil.writeLines(list, "E:\\a.txt","UTF-8");
System.out.println(file);
}
}

追加模式默认是关闭的

package hutool;
import cn.hutool.core.io.FileUtil;
import java.io.File;
import java.util.ArrayList;
public class HutoolDemo1 {
public static void main(String[] args) {
ArrayList<String>list=new ArrayList<>();
list.add("aaa");
list.add("aaa");
list.add("aaa");
File file = FileUtil.writeLines(list, "E:\\a.txt","UTF-8", true);
System.out.println(file);
}
}

appendLines:把集合中的数据写出到文件中,续写式

package hutool;
import cn.hutool.core.io.FileUtil;
import java.io.File;
import java.util.ArrayList;
public class HutoolDemo1 {
public static void main(String[] args) {
ArrayList<String>list = new ArrayList<>();
list.add("aaa");
list.add("aaa");
list.add("aaa");
File file = FileUtil.appendLines(list,"E:\\a.txt","UTF-8");
System.out.println(file);
}
}

readLines:指定字符编码,把文件中的数据,读到集合中。

package hutool;
import cn.hutool.core.io.FileUtil;
import java.util.List;
public class HutoolDemo1 {
public static void main(String[] args) {
List<String> strings = FileUtil.readLines("E:\\a.txt", "UTF-8");
System.out.println(strings);
}
}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 12:15:10

导师严选2026 TOP8 AI论文写作软件:本科生毕业论文全攻略

导师严选2026 TOP8 AI论文写作软件&#xff1a;本科生毕业论文全攻略 2026年AI论文写作软件测评&#xff1a;从功能到体验的全面解析 随着人工智能技术在学术领域的深入应用&#xff0c;AI论文写作工具已成为本科生撰写毕业论文的重要辅助。然而&#xff0c;面对市场上琳琅满目…

作者头像 李华
网站建设 2026/4/16 14:03:01

Langchain如何和业务项目集成:LangChain 入门 (二)

前言在《初认Langchain&#xff0c;详细介绍Langchain是什么》一文中&#xff0c;我们澄清了LangChain并非一个简单的演示框架&#xff0c;而是一套面向生产环境的工程化工具集。随后&#xff0c;《从玩具到工具&#xff1a;LangChain 入门 (一)》通过一个可运行的Demo&#xf…

作者头像 李华
网站建设 2026/4/16 14:02:39

春节年货节营销冲刺!AI工具助力快速生成品牌VI全套设计

春节临近&#xff0c;各大品牌纷纷进入了年货节的营销大战&#xff0c;春节品牌VI设计成为了市场营销的重中之重。作为一名资深物料设计师&#xff0c;每年春节期间&#xff0c;工作量大、时间紧迫&#xff0c;面对客户的设计需求&#xff0c;我常常需要在最短时间内&#xff0…

作者头像 李华
网站建设 2026/4/16 12:26:33

潜航者指南:深入探索PyTorch核心API的七大维度

潜航者指南&#xff1a;深入探索PyTorch核心API的七大维度 引言&#xff1a;超越表面API的深度学习框架探索 PyTorch已成为现代深度学习研究的基石框架&#xff0c;其成功不仅源于直观的API设计&#xff0c;更在于底层精心构建的抽象层次和动态计算图范式。大多数教程停留在tor…

作者头像 李华
网站建设 2026/4/16 15:53:35

2026文旅AI营销榜单:原圈科技领衔破解增长焦虑

面对文旅行业获客难、体验同质化的困境,AI营销成为破局关键。本文揭晓的2026年AI营销服务商实力榜单中,原圈科技凭借其全链路智能体解决方案和深厚的行业积累,在多个维度下表现突出,被普遍视为企业实现智慧增长、优化ROI的理想合作伙伴。该榜单将助您精准把握AI时代脉搏。引言:…

作者头像 李华