2010-10-11 41 views
8

我正在做一個項目,其中我需要閱讀一個HTML文件並識別特定標籤,修改標籤的內容並創建一個新的HTML文件。是否有一個庫解析HTML標籤並能夠將標籤寫回新文件?如何解析和修改Java中的HTML文件

回答

2


如果你想修改網頁並返回修改後的內容,我最好的方法是使用XSL轉換。
http://en.wikipedia.org/wiki/XSLT

+0

我想這是我期待的。我需要生成報告並以用戶希望顯示的格式顯示報告。 – chai 2010-10-12 02:05:58

+1

我目前使用Xalan處理器,代碼運行良好。這是處理器的鏈接http://xml.apache.org/xalan-j/ – chai 2010-10-12 03:29:06

0

查看http://java-source.net/open-source/html-parsers瞭解將html文件解析爲可以被操作的java對象的java庫的列表。

如果您正在使用的html文件格式正確(xhtml),那麼您還可以在java中使用XML庫來查找特定標籤並修改它們。 IO本身應該由您正在使用的特定庫處理。

如果您選擇手動解析字符串,則可以使用正則表達式來查找特定標記並使用java io庫寫入文件並創建新的html文檔。但是這種方法重新發明了輪子,因爲你必須管理標籤的打開和關閉,並且所有這些事情都由預先存在的庫處理。

2

HTML解析器太多。您可以使用JTidy,NekoHTML或檢查TagSoup

我通常更喜歡使用標準的Java XML解析器解析XHTML,但不能對任何類型的HTML進行此操作。

+0

我使用了JTidy和Nekohtml - 兩者都很不錯。 – 2010-10-11 18:34:07

6

退房http://jsoup.org,它具有友好的類DOM API,你不需要解析HTML簡單的任務。