日期:2014-05-20  浏览次数:20866 次

BufferReader读完文件后怎么重新定位到文件起始位置
File selectedFile=new File("要读取的文件");
FileReader fr=new FileReader(selectedFile);
BufferedReader br=new BufferedReader(fr);

int n=0;
String str;
br.mark(0);
while((str=br.readLine())!=null)
  {
   
  n++;//获取文件的行数  
   
  }
br.reset();

for(int i=0;i<10;i++)
{
  str=br.readLine();
  System.out.println(str);
}

我想在读完文件后重新定位到文件起始位置,然后读取文件的前10行数据,打印输出,怎么实现? 用上面的方法我试了好像不行,怎么实现啊?....
有没有什么方法可以定位到起始位置。

谢谢了!


------解决方案--------------------
还是用FileChannel类吧
探讨
File selectedFile=new File("要读取的文件");
FileReader fr=new FileReader(selectedFile);
BufferedReader br=new BufferedReader(fr);

int n=0;
String str;
br.mark(0);
while((str=br.readLine())!=null)
……