想用android 写一个电子书阅读器,可是用java.io读取一个较大(5M)的TXT文件时,android仿真器上的apk文件没有反应(读取的文件较大的原因,读一个1,2K大小的文件可以读出来)。请问一下,有不有什么解决的办法呀? 

解决方案 »

  1.   

    由于文件过大,读取很慢,程序会阻塞!过大会造成程序无法响应的!而一般电子书阅读器在读取文件时都不是完整读取放入内存的可以实现一次读取固定size的txt
    在右键翻页或者按下键时再接着读取 
      

  2.   

     int zi=0;
             char zi1;
         InputStream fin=this.getResources().openRawResource(R.raw.xyz);
         InputStreamReader ipsr=new InputStreamReader(fin,"GBK");
         BufferedReader bin=new BufferedReader(ipsr);
         int wordcount=1500;//一页的字数
         int page=0;//页数
         int jishu=0;//计数
         for(int i=page*wordcount;zi!=-1||jishu<1500;i++)
         {
           zi=bin.read();
           zi1=(char)zi;
           readcontent=readcontent+String.valueOf(zi1);
           jishu++;
         }
         return readcontent;
    这是我的代码,好像还是不行!!大大们,看看,是哪儿的问题呀!!
      

  3.   

    通过变量 page 来控制页数
      

  4.   

    你可以去看看这个这个例子,一个简单的电子书http://blog.csdn.net/hmg25/archive/2011/05/14/6419694.aspx