重学java 70.IO流 Commons-io工具包

所有人都不看好你,可你偏偏最争气

                                               —— 24.6.14

一、介绍

        IO技术开发中,代码量很大,而且代码的重复率较高。如果我们要遍历目录,拷贝自录就需要使用方法的递归调用,也增大了程序的复杂度。

二、添加第三方jar包

1.jar包

        本身是一个压缩包,里面装的都是class文件,我们想使用jar包中的工具类,就需要将相应的jar包解压到我们当前的项目下

2.引入jar包

        a.在当前模块下创建文件夹,取名为lib或者libs

        b.将准备好的jar包,放到此文件夹下

        c.对着jar包,右键-> add as library(如果我们想将lib下所有的jar包一起解压,我们就直接对着 lib文件夹右键一起解压

        d.level可以选择module,此时上面叫做name的输入框会变成空的,不用管

        e.直接点ok

三、工具包的使用

Ioutils类

        静态方法:IOUtils.copy(inputstream in,outputstream out)传递字节流,实现文件复制。
        静态方法:IOUtils.closeQuietly(任意流对象)悄悄的释放资源,自动处理close()方法抛出的异常。

        IOUtils.copy(inputstream in,outputstream out)

import org.apache.commons.io.IOUtils;

import java.io.*;

public class Demo285IOUtils {
    public static void main(String[] args) throws IOException {
        // 静态方法:IOUtils.copy(inputstream in,outputstream out)传递字节流,实现文件复制。可以自动关闭资源,自动创建不存在的文件
        IOUtils.copy(new FileInputStream("AllWillBest_Java/4.txt"),new FileOutputStream("AllWillBest_Java/5.txt"));
}

        IOUtils.closeQuietly(任意流对象)

import org.apache.commons.io.IOUtils;

import java.io.*;

public class Demo285IOUtils {
    public static void main(String[] args)  {
        // 静态方法:IOUtils.closeQuietly(任意流对象)悄悄的释放资源,自动处理close()方法抛出的异常。
        FileWriter fw =null;
        try{
            fw = new FileWriter("AllWillBest_Java/5.txt");
            fw.write("AllWillBest_Java\n一切都会好的\n我一直相信");
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if(fw != null){
                // 最终关闭资源
                IOUtils.closeQuietly(fw);
            }
        }
    }
}

Fileutils类

静态方法:Fileutils.copyDirectoryToDirectory(File src,File dest);

        传递File类型的目录,进行整个目录的复制自动进行递归遍历
                参数:
                        src:要复制的文件夹路径        dest:要将文件夹粘贴到哪里去
静态方法:writeStringToFile(File file,String str)        写字符串到文本文件中。

静态方法:String readFileToString(File file)        读取文本文件,返回字符串。

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.io.IOException;

public class Demo286IOFillUtils {
    public static void main(String[] args) throws IOException {
//        静态方法:FileUtils.copyDirectoryToDirectory(File src,File dest);
//            传递File类型的目录,进行整个目录的复制,自动进行递归遍历。
//                参数:
//                    src:要复制的文件夹路径   dest:要将文件夹粘贴到哪里去
        FileUtils.copyDirectoryToDirectory(new File("\\D:\\2LFE\\Desktop\\java\\我一直相信"),new File("D:\\2LFE\\Desktop\\java\\一切都会好的"));

//        静态方法:writeStringToFile(File file,String str)    字符串到文本文件中。
        FileUtils.writeStringToFile(new File("AllWillBest_Java/5.txt"),"一切都会好的,我一直相信");

//        静态方法:String readFileToString(File file)     读取文本文件,返回字符串。
        String s = FileUtils.readFileToString(new File("AllWillBest_Java/5.txt"));
        System.out.println(s);
    }
}

Fileutils.copyDirectoryToDirectory(File src,File dest); 传递File类型的目录,进行整个目录的复制自动进行递归遍历

 writeStringToFile(File file,String str)        写字符串到文本文件中。

 String readFileToString(File file)        读取文本文件,返回字符串

四、快速记忆IO流对象

五、IO流下 总结

缓冲流

转换流

序列化流

打印流

Properties集合结合IO流使用

IO工具包——CommonsIO

  • 20
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值