1

我只是想知道readLine方法可以从java中的文件读取的行数是否有任何限制。任何帮助将不胜感激。这就是我所说的:

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

谢谢。

4

4 回答 4

2

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

于 2010-10-20T17:29:52.470 回答
1

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

于 2010-10-20T17:31:57.007 回答
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
} 
于 2010-10-20T18:35:40.677 回答
-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) {  
}  
于 2010-10-20T18:00:23.520 回答