需要写个BEAN,功能是读文件,文件的大小几十M左右,读取的时候可能需要读中间的N行,也可能全部读取。
怎么样才可以提高读取的效率?注:不需要写数据,只需要读数据,而且都是整行读的。

解决方案 »

  1.   

    服务器上每天都有一个日志文件,日志文件是根据日期作为文件名的,文件大小是几十M,现在我需要通过JSP读这个文件显示在WEB页面上,为了方便其他技术员看日志。读文件的时候可能需要读一整天的所有数据,也可能读某天的某个时间段的数据。
    我担心的是如果读这么大的文件,会不会对服务器造成比较大的影响。
      

  2.   

    RandomAccessFile ra = new RandomAccessFile("","rw");
    ra.readUTF();类似
      

  3.   

    1,当读取整个文件会不会造成服务器CPU占用很高或者用户浏览器白屏现象?2,当读取某个时间段的时候怎么才可以比较效率高得读取数据并显示出来?
      

  4.   

    每天一个日志都能有几十M啊?有那么多东西记录吗?
    量小的话你用XML来记录,应该比较高效一些。
      

  5.   

    1,当读取整个文件会不会造成服务器CPU占用很高或者用户浏览器白屏现象?
    ----
    WEB服务器不适合参与这种高强度IO的操作。虽然CPU占用不会因IO受太大的影响,但是如果还有其他IO操作,很明显会受到影响。用户浏览器的反应跟你服务器处理速度的快慢有关系。2,当读取某个时间段的时候怎么才可以比较效率高得读取数据并显示出来?
    -----
    这种不定长记录的文本文件,无论怎样处理效率都是很低的!除非你用缓存,可是几十M的文件,用缓存太划不来了。
      

  6.   

    这种不定长文本文件的读法,你选择的余地不大。
    用BufferedReader吧