為了支持LingosHook Android Client,今天優化了我的HTML解析類--TinyHtmlParser。長時間沒看LingosHook代碼,都不認識了,分析了很久才明白其工作原理,汗啊,這曾經可是自己寫的啊。。。
這次增加了一個新的分解過程中類型 -- DT_END_SPECIAL,用于指點類似<META .../>的元素,真沒想到,以前竟然不支持這個,如果元素是以'/'結尾的話,只能放到DT_SPECIAL列表中,這方法太無聊了。。。
還有,這次增加了輸出功能,分解后的數據可以再合成一個HTML串了。這樣極大地方便了定制輸出,以后提取指定數據要準確和靈活很多了。(哈哈,可以增加真正的數據導出功能了。。。)
就這些,TinyHtmlParser在類似'<A>[<B>123</B>]</A>'的處理上還不夠靈活,導致輸出時有些走樣,還有再改改。另外,輸出函數直接放到TinyHtmlParser類中有些勉強,還是單獨弄個Ouput類來處理比較,比較好看。
<---- 就是分割線 ---->
喜歡看代碼的,請幫忙檢查這里
TinyHtmlParser.h 和
TinyHtmlParser.cpp ,辛苦了。