commons-io之LineIterator

BufferedReader 通常在只有读到空格或者换行符时才会结束读取,攻击者很容易构内存攻击导致系统瘫痪,出于安全考虑这里推荐使用io包的LineIterator,并且其在性能上也优于普通流。小面附上小demo

LineIterator iterator=FileUtils.lineIterator(new File("C://demo.csv"));
        while(iterator.hasNext())
        {
            String oneLine=iterator.nextLine();
        }

iterator.close();


此外LineIterator可以构造器可以接受一个Reader通常在读取大文件时候将BufferedReader装进去性能会比较好

BufferedReader reader=new BufferedReader(new InputStreamReader(new FileInputStream("C://demo.csv")));
        LineIterator iterator=new LineIterator(reader);
        while(iterator.hasNext())
        {
            iterator.nextLine();
        }

iterator.close();

以上就是比较常用的用法了,如有纰漏请及时留言指正。谢谢

你可能感兴趣的:(open-api)