java----commons-io

maven

<dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
</dependency>

FileUtils

遍历

    public static void main(String[] args) throws IOException {
        //l可以是文件大小也可以是目录大小
        //long l = FileUtils.sizeOf(new File("xx.txt"));
        //System.out.println(l);

        //列出子子孙孙的目录和文件
        //Collection<File> files = FileUtils.listFilesAndDirs(new File("C:\Users\zhengyan\Desktop\springframework"), EmptyFileFilter.EMPTY, DirectoryFileFilter.INSTANCE);
        //for (File f:files) {
        //System.out.println(f);
        //}

        //列出文件和目录(可以为空) DirectoryFileFilter.DIRECTORY:子子孙孙,如果是null,表示只有第一层
        Collection<File> files = FileUtils.listFilesAndDirs(new File("C:\Users\zhengyan\Desktop\test"), EmptyFileFilter.EMPTY, DirectoryFileFilter.DIRECTORY);
        for (File f:files) {
            System.out.println(f);
        }
        //列出文件
        Collection<File> files1 = FileUtils.listFiles(new File("C:/Users/zhengyan/Desktop/test"), EmptyFileFilter.EMPTY, DirectoryFileFilter.DIRECTORY);
        for (File x:files1) {
            System.out.println(x);
        }
        //更多组合
        files = FileUtils.listFilesAndDirs(new File("C:\Users\zhengyan\Desktop\test"), FileFilterUtils.or(new SuffixFileFilter("java"),EmptyFileFilter.NOT_EMPTY), DirectoryFileFilter.DIRECTORY);

    }

文件读取

    public static void main(String[] args) throws IOException {
        String s = FileUtils.readFileToString(new File("C:\Users\zhengyan\Desktop\script.txt"),"utf-8");
        System.out.println(s);

        byte[] bytes = FileUtils.readFileToByteArray(new File("C:\Users\zhengyan\Desktop\script.txt"));

        //逐行读取
        List<String> strings = FileUtils.readLines(new File("C:\Users\zhengyan\Desktop\script.txt"), "utf-8");
    }

文件写入

    public static void main(String[] args) throws IOException {
        FileUtils.writeStringToFile(new File("a.txt"),"xx","utf-8");
        FileUtils.writeByteArrayToFile(new File("a.txt"),"xx".getBytes("utf-8"),true);

        //写入列表
        ArrayList<String> strings = new ArrayList<>();
        strings.add("1");
        strings.add("2");
        strings.add("3");
        //--:列表中的每一个元素的连接符
        FileUtils.writeLines(new File("a.txt"),strings,"--",false);
    }

文件copy

public static void main(String[] args) throws IOException {
        //方式1
        //byte[] bytes = FileUtils.readFileToByteArray(new File("a.txt"));
        //FileUtils.writeByteArrayToFile(new File("b.txt"),bytes);

        //FileUtils.copyURLToFile(new URL("http://www.baidu.com"),new File("a.txt"));

        //文件的copy
        //FileUtils.copyFile(new File("a.txt"),new File("a-copy.txt"));

        //copy文件到目录
        //FileUtils.copyFileToDirectory();

        //copy目录到目录
        //FileUtils.copyDirectoryToDirectory();

        //将目录中的文件copy到目录中
        //FileUtils.copyDirectory();

        //下载url源码
        //String s = IOUtils.toString(new URL("http://www.163.com"), "gbk");
    }

IOUtils

//将htmlContent内容转成输入流
InputStream inputStream = IOUtils.toInputStream(htmlContent, "utf-8");

  

原文地址:https://www.cnblogs.com/yanxiaoge/p/11608929.html