news 2026/2/4 2:35:05

java基础-IO流(Commons-io)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
java基础-IO流(Commons-io)

在日常开发过程中,大部分的时候,我们都不会自己写IO流,一来是太复杂,容易和核心的业务代码混淆,二来自己写的IO流往往效率低,存在问题,给后续项目二次开发带来很多不必要的麻烦。

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

作用:提供IO流的开发效率

使用Commons-io要先导包

右键添加为库

package Day12_IO; import org.apache.commons.io.FileUtils; import org.apache.commons.io.IOUtils; import org.apache.commons.io.input.ReaderInputStream; import java.io.*; import java.util.List; public class IOTest04 { public static void main(String[] args) throws IOException { //使用Commons-io来操作IO //1、copyFile:复制文件 //E:\test\\test.txt复制生成E:\doc\doc.txt下面 // File srcFile = new File("E:\\test\\test.txt"); // File destFile = new File("E:\\doc\\doc.txt"); // FileUtils.copyFile(srcFile,destFile); //2、copyDirectory:复制文件夹 //E:\test\test1复制到E:\doc下,生成一个test2文件夹 //File srcDirectory = new File("E:\\test\\test1"); //File destDirectory = new File("E:\\doc\\test2"); //FileUtils.copyDirectory(srcDirectory,destDirectory); //copyDirectoryToDirectory和copyDirectory的区别在于,copyDirectoryToDirectory会把源文件的文件夹复制到目的地 //copyDirectory就只会把源文件的文件夹里面的内容复制到目的地 //3、copyDirectoryToDirectory // File srcDirectory = new File("E:\\test\\test1"); // File destDirectory = new File("E:\\doc"); // FileUtils.copyDirectoryToDirectory(srcDirectory,destDirectory); //4、deleteDirectory:删除文件夹,这个是目录都不会保留 //删除E:\doc\test1 //File file = new File("E:\\doc\\test1"); //FileUtils.deleteDirectory(file); //5、cleanDirectory:清空文件夹内的内容,这个目录会保留 // File file = new File("E:\\doc\\test1"); // FileUtils.cleanDirectory(file); //6、readFileToString // File file = new File("E:\\test\\test1\\test.txt"); // String s = FileUtils.readFileToString(file, "utf-8"); // System.out.println(s); //7、写出数据,默认不加true的时候是默认不续写的,加了true默认是续写 // File file = new File("E:\\test\\test1\\test.txt"); // String content = "Hello, World!\n这是使用FileUtils写入的文本。"; // FileUtils.write(file,content,"UTF-8",true); // System.out.println(FileUtils.readFileToString(file, "utf-8")); //IOUtils类 //1、copy:复制文件,要注意一下copy的参数类型 // FileInputStream fis = new FileInputStream("E:\\test\\test1\\test.txt"); // FileOutputStream fos = new FileOutputStream("E:\\doc\\test1\\doc.txt"); // IOUtils.copy(fis,fos); //2、copyLarge:复制大文件 // FileInputStream fis = new FileInputStream("E:\\test\\test1\\test.txt"); // FileOutputStream fos = new FileOutputStream("E:\\doc\\test1\\doc.txt"); // IOUtils.copyLarge(fis,fos); //3、readLines读取数据 // FileInputStream fis = new FileInputStream("E:\\test\\test1\\test.txt"); // for (String s : IOUtils.readLines(fis, "UTF-8")) { // System.out.println(s); // } //4、write,IOUtils本身是不支持续写的,如果要续写,就在基本流上设置true FileOutputStream fos = new FileOutputStream("E:\\doc\\test1\\doc.txt",true); String s="中国"; IOUtils.write(s, fos, "UTF-8"); } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/30 20:36:20

常见错误排查手册:CUDA out of memory等典型问题解决方案

常见错误排查手册:CUDA out of memory等典型问题解决方案 在大模型训练和推理的实际工程中,显存不足的问题几乎每个开发者都曾遭遇过。你正准备启动一次关键的微调任务,GPU监控显示一切正常——突然,进程中断,日志里赫…

作者头像 李华
网站建设 2026/1/30 20:17:00

Minecraft服务器终极安全防护指南:Paper插件配置与反作弊实战

Minecraft服务器终极安全防护指南:Paper插件配置与反作弊实战 【免费下载链接】Paper 最广泛使用的高性能Minecraft服务器,旨在修复游戏性和机制中的不一致性问题 项目地址: https://gitcode.com/GitHub_Trending/pa/Paper 还在为服务器作弊问题困…

作者头像 李华
网站建设 2026/2/2 3:31:46

终极指南:将MacBook刘海区变身智能音乐控制中心

终极指南:将MacBook刘海区变身智能音乐控制中心 【免费下载链接】boring.notch TheBoringNotch: Not so boring notch That Rocks 🎸🎶 项目地址: https://gitcode.com/gh_mirrors/bor/boring.notch 你是否曾想过,那个看似…

作者头像 李华
网站建设 2026/1/30 0:30:39

Calibre电子书格式转换终极指南:轻松解决设备兼容难题

Calibre电子书格式转换终极指南:轻松解决设备兼容难题 【免费下载链接】calibre The official source code repository for the calibre ebook manager 项目地址: https://gitcode.com/gh_mirrors/ca/calibre 还在为电子书在不同设备上无法正常阅读而苦恼吗&…

作者头像 李华
网站建设 2026/1/30 5:25:36

Comflowyspace完全攻略:从零开始的AI图像创作大师之路

Comflowyspace完全攻略:从零开始的AI图像创作大师之路 【免费下载链接】comflowyspace Comflowyspace is an intuitive, user-friendly, open-source AI tool for generating images and videos, democratizing access to AI technology. 项目地址: https://gitco…

作者头像 李华