html解析htmlparser
htmlparser
首頁:檔案:htmlparser-2.0-snapshot-bin.zip
cpdetector
首頁:檔案:cpdetector_eclipse_project_1.0.7.zip
解開壓縮後,執行ant打包命令,build.xml有些地方需要稍微根據具體情況調整一下
ant jar.htmlentitydecoder
得到jar包
cpdetector_1.0.7.jar
html工具類函式一:自動探測url的html內容的編碼
/*** 自動探測頁面的編碼
* * @param url
* @return
* @throws malformedurlexception
*/public static string autodetectcharset(string url) catch (malformedurlexception e)
codepagedetectorproxy detector = codepagedetectorproxy.getinstance();
detector.add(new parsingdetector(false));
detector.add(jchardetfacade.getinstance());
detector.add(asciidetector.getinstance());
detector.add(unicodedetector.getinstance());
charset charset = null;
try catch (ioexception e)
if (charset == null)
return charset.name();
}html工具類函式二:讀取url中的html文字
/*** 讀取檔案html內容
* * @param url
* @param charset
* @return
* @throws ioexception
*/public static string readurl(string url, string charset) catch (malformedurlexception e)
inputstream in = null;
try catch (ioexception e)
bufferedreader reader = null;
try catch (unsupportedencodingexception e)
string line = new string();
stringbuffer temp = new stringbuffer(transfer_size);
try
in.close();
reader.close();
} catch (ioexception e)
content = temp.tostring();
return content;
}html工具類函式三:解析html得到其中的所有tag
public static nodelist getformnodelist(string url) catch (parserexception e)
return nodelist;
}html工具類函式四:解析tag中的屬性,生成所有的pagefield的pojo
public static listgetpagefields(string url) else if (node instanceof scclselectbizcodestag) else if (node instanceof textareatag) }}
return list;
}擴充套件自定義標籤
public class scclselectbizcodestag extends tagnode ;
public string getids()
public string getenders()
public string getcategory()
public string getid()
public string getselected()
}用filter方式過濾訪問tag
public class postformfilter implements nodefilter
if (node instanceof scclselectbizcodestag)
if (node instanceof textareatag)
return false;}}
測試public static void main(string args)
throws org.htmlparser.util.parserexception, ioexception
以上**可以解析自定義型別
問題一拷貝cpdetector_1.0.7.jar到專案中後
同時也要拷貝ext下面的chardet.jar到lib下面,不然在呼叫
detector.add(jchardetfacade.getinstance());時要報錯,找不到類
nsicharsetdetectionobserver
問題二htmlparser.jar
htmllexer.jar
apache 的FTPClient使用以及注意事項
tomcat apache jk進行集群後,要進行共享,經過網上的搜尋可以有多種方式實現。一種是使用jcifs。jcifs可以實現網路中共享檔案的讀寫,但是前提是,檔案必須共享,還要在同乙個區域網內。所以如果電腦上禁止了檔案共享的話,就行不通了。一種是使用sun提供的ftpclient。ftpcli...
使用FTPClient構造自己的FTP類
使用ftpclient構造自己的ftp類 所有操作需要放在子執行緒 public class ftpmanager public ftpmanager string ip,int port,string username,string password private boolean uploadf...
DLNA 開源實現
dlna 發表於6個月前 2013 07 29 00 53 閱讀 0 12人收藏此文章,我要收藏 贊 0 ubuntu dlna minidlna rygel 目錄 希望在電視上看電腦中的電影,但又不想每次都抱著筆記本接線看。再加上新裝備的mibox 小公尺盒子 所以急需ubuntu下提供dlna服...