Как прочитать все содержимое файла Epub в Android?

Я хочу прочитать все содержимое всех ток.
Можете ли вы сказать мне, как читать все главы, которые есть в оглавлении (ТОК).
Пожалуйста, опубликуйте измененный код, чтобы мы могли читать весь контент или публиковать что-то, чтобы я мог читать контент.

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       AssetManager assetsmanger=getAssets();

        try {                                   
             // find InputStream for book                   
                InputStream  epubInputStream=assetsmanger.open("books/INCOME-TAX-ACT-1961.epub");

              // Load Book from inputStream
              Book book = (new EpubReader()).readEpub(epubInputStream);

            // Log the book's authors                         
              Log.i("epublib", "author(s): " +book.getMetadata().getAuthors());

                // Log the book's title  
             Log.i("epublib", "title: " + book.getTitle());

        String data=new String (book.getContents().get(3).getData()); 
         String k=data;
                web1=(WebView)findViewById(R.id.webView1);    
//                txt1=(TextView) findViewById(R.id.textView1);
//                txt1.setText(k);
            web1.loadData(k," text/html", "utf8");

        Bitmap coverImage=BitmapFactory.decodeStream(book.getCoverImage().getInputStream());

         Log.i("epublib" , "Coverimage is " + coverImage.getWidth() + " by "
                  + coverImage.getHeight() + " pixels");
        // Log the tale of contents
         logTableOfContents(book.getTableOfContents().getTocReferences(), 0);

    //     list=(ExpandableListView)findViewById(R.id.expandableListView1);


//      img1=(ImageView)findViewById(R.id.imageView1);    
//            img1.setImageBitmap(coverImage);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                 Log.e("epublib", e.getMessage());
            }
            catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }

    private void logTableOfContents(List<TOCReference> tocReferences, int depth) {
        // TODO Auto-generated method stub

        if(tocReferences== null ){
            return;
        }
        for(TOCReference tocReference:tocReferences){
            StringBuilder tocstring=new StringBuilder();
            for(int i=0;i<depth;i++)
            {
                tocstring.append("\t");

            }
            HashMap<String, String> map = new HashMap<String, String>();


        String k=   tocstring.append(tocReference.getTitle()).toString();
        map.put("TOC",k);
        ArrayList<HashMap<String, String>> list1 = new ArrayList<HashMap<String, String>>();
        list1.add(map);
        String t=k;
             Log.i("epublib", tocstring.toString());
             logTableOfContents(tocReference.getChildren(), depth + 1);

        }           
    }                                     
    }

Ответы на вопрос(1)

Ваш ответ на вопрос