我正在尝试使用Java从ePub文件中检索文本数据。 ePub文件的文本位于HTML文件中,格式如下所示 -
<h2 id="pgepubid00001">Chapter I</h2>
<p>Some text</p>
<p>Another line of Text</p>
<br/>
<h2 id="pgepubid00001">Chapter II</h2>
etc..
在打开这个文件之前,我已经知道了我需要提取的章节的id,并且也可以找到下一章的id。因此,我认为一种逻辑方法是尝试在SAX解析器中解析它并提取每个段落中的文本,直到我到达下一章的链接。但这证明是一项艰巨的任务。
当然,一切都是动态的,所以没有设置链接去等.HTML是半严格格式化的,所以我不希望解析是一个很大的问题。任何人都可以推荐一种提取所需文本的好方法吗?
解决方案必须仅限JAVA ,不能使用其他语言。我希望在Android设备中实现此功能
答案 0 :(得分:2)
嗯,你知道章节的ids,为什么不使用String.indexOf?
start = text.indexOf("<h2 id=\"pgepubid00001\">");
end = text.indexOf("<h2 id=\"pgepubid00002\">");
whatYoureLookingFor = text.substring(start, end-start)
保持简单。