2012-11-20 44 views
1

當我使用InputStreamReader從網頁讀取數據時,一切都可以。 我有解析數據到DocumentHTML的問題。將數據解析爲DocumentHTML

主要原因是HTML腳本有一些不正確使用的特殊字符。 有兩個&標誌兩次(「& &」),我相信這會導致代碼崩潰。

我的代碼如下所示:

URL url = new URL(PageUrl); 
URLConnection conn = url.openConnection(); 
// ... omitted ... 

// parsing 
HTMLDocument doc = (HTMLDocument)db.parse(conn.getInputStream()); 

因爲我在做一個Android應用程序,因爲DocumentHTML對象將是太大,我不使用標準的解析函數。

我發現許多解析HTML的例子像使用jsoup一樣,但它們不是我想要的。

我想寫我自己的解析代碼,以便HTMLDocument對象保持小。

回答

0

爲什麼不使用java中可用的所有可用的Html解析器? 他們有社區支持,所以他們是最好的選擇。

Open Source HTML Parsers in Java

+0

最主要的原因是,如果我使用現有的HTML解析器,在Java中HTMLDocument的對象的大小將是在大型叮咬可用,因爲Android應用會慢慢的工作實在是太大了。如果我要編寫自己的代碼,HTMLDocument對象的大小將以千字節爲單位,並且它將具有合適的大小以支持Android應用程序。它會更快地工作。 – user1282256

+0

在這裏,您可以看到應用程序內編碼解析器的示例。我希望它可以幫助: - > http://stackoverflow.com/questions/8480130/parsing-html-in-java-for-an-android-app –