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);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力敲代码的小火龙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值