org.apache.commons.io.IOUtils

发布时间 2023-10-09 13:33:42作者: 草木物语

IO流在我们日常工作中也用得比较多,尽管java已经给我们提供了丰富的API。

但我们不得不每次读取文件,或者写入文件之后,写一些重复的的代码。手动在finally代码块中关闭流,不然可能会造成内存溢出

有个好消息是:如果你使用org.apache.commons.io包下的IOUtils类,会节省大量的时间。

 

        {//读取文件
            String str = IOUtils.toString(new FileInputStream("/home/test_a.txt"), "UTF-8");
            System.out.println(str);
        }

        {//写入文件
            String str = "111test_b111\n" +
                    "222test_b222";
            IOUtils.write(str, new FileOutputStream("/home/test_b.txt"), StandardCharsets.UTF_8.name());
        }

        {//文件拷贝
            IOUtils.copy(new FileInputStream("/home/test_a.txt"), new FileOutputStream("/home/test_b.txt"));
        }

        {//读取文件内容到字节数组
            byte[] bytes = IOUtils.toByteArray(new FileInputStream("/home/test_a.txt"));
        }