对readLine()的限制

时间:2010-10-20 17:24:13

标签: java readline bufferedreader

我只是想知道readLine方法可以从java中的文件中读取的行数是否有任何限制。任何帮助都会得到帮助。这就是我所说的:

FileReader fr1=new FileReader("/homes/output_train_2000.txt");
BufferedReader br1=new BufferedReader(fr1);
while((line1=br1.readLine())!=null){ }  

感谢。

4 个答案:

答案 0 :(得分:2)

使用缓冲式阅读器时,整个文件永远不会被读入内存,因此它应该能够处理操作系统支持的任何大小的文件。

答案 1 :(得分:1)

它可以读取任意数量的行。

答案 2 :(得分:0)

尝试限制读取的行数?如果是这样,那么您可以轻松添加一些代码来执行此操作:

FileReader fr1=new FileReader("/homes/output_train_2000.txt");
BufferedReader br1=new BufferedReader(fr1);
int numLinesRead = 0;
int maxLines = 1000;
while((numLinesRead < maxLines) && (line1=br1.readLine())!=null){
  numLinesRead++;
  // other stuff
} 

答案 3 :(得分:-2)

我不知道有什么限制。这是一种更好的方法:

BufferedReader reader = null;  
try {  
    reader = new BufferedReader( new FileReader( "/homes/output_train_2000.txt") );  
    String line = null;  
    do {  
        line = reader.readLine();  
        if( line != null ) {  
            // Do something     
        }  
    } while( line != null );  
} catch (Exception e) {  
    e.printStackTrace();  
} finally {  
    if( reader != null )  
    try {  
        reader.close();  
    } catch (IOException e) {  
}