2011-12-08 10 views
1

私はしたいepubリーダー app.Now私はファイル内のチャプター名を取得しているが、章の全体のデータを取得する方法。epubファイルから全章を読むには?

+0

今まであなたが行ったことを説明してください...あなたは何を使ってepubのコンテンツを読んでいますか? – Reno

+0

私はepublibライブラリを使用しています。タイトル、著者名、すべてのチャプター名を取得していますが、チャプター内のテキストを取得していません。取得方法はわかりません。 – Umesh

+0

@Umesh私はまた、epubファイルを読んでいますが、いくつかの長いファイルでは、あなたが直面してその問題を解決してから助けてください、私にoutOfMemoryのエラーを与えています。 ありがとう – PankajAndroid

答えて

2

私はすでに前にこれを公表したと思います。 あなたはGoogleにできるnl.siegmann.epublibを使用しています。 私のコードでは、どのようにしてepubが動作するかを示すBookクラスを見て、どのようにしたのかを示します。 ブッククラスでスパインを使う私は本の中で最大の背骨を得ています。 それを文字列に変換します。

ここで私がどのようにしたかについての私のコードです。

public String getEntireBook() 
    { 
     String line, linez = null; 
     Spine spine = amBook().getSpine(); 
     Resource res; 
     List<SpineReference> spineList = spine.getSpineReferences() ; 

     int count = spineList.size(); 
     int start = 0; 

     StringBuilder string = new StringBuilder(); 
     for (int i = start; count > i; i = i +1) { 
      res = spine.getResource(i); 

       try { 
        InputStream is = res.getInputStream(); 
        BufferedReader reader = new BufferedReader(new InputStreamReader(is)); 
        try { 
         while ((line = reader.readLine()) != null) { 
          linez = string.append(line + "\n").toString(); 
         } 

        } catch (IOException e) {e.printStackTrace();} 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } 
     } 
     return linez; 
    } 
+0

@sesdfgfgdあなたが私を助けることができるなら、私はこの同じ問題に直面している私にエラーを与えるので、背骨が何であるか教えてくれますか? – PankajAndroid

+0

http://www.siegmann.nl/static/epublib/apidocs/の文書を読んでください。あなたの質問に答えるために、どのスパインが「Spine:これらは、ユーザーが最初から最後まで本を読むときに表示されるリソース」です。あなたはそれがどのように動作するのかを示すように、ブッククラスを見始めることができます。がんばろう。 – wesdfgfgd

関連する問題