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();
以上就是比较常用的用法了,如有纰漏请及时留言指正。谢谢