我試圖使用java.util.Scanner採取維基百科內容並將其用於基於詞的搜索。 事實是,這一切都很好,但是當閱讀一些文字時,它會給我錯誤。 看着代碼,並做了一些檢查,結果證明,有些詞似乎 不識別編碼,等等,而內容是不可讀的。 這是用來取頁面代碼:java.util.Scanner和Wikipedia
// -Start-
try {
connection = new URL("http://it.wikipedia.org
wiki/"+word).openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
// if(word.equals("pubblico"))
// System.out.println(content);
System.out.println("Doing: "+ word);
//End
的問題的話爲「共和」的意大利語維基百科出現。上字公衆大樓中的println的 結果是這樣的(板缺): ï¿ï¿½] KSR>�〜戊 �1A���E�ER3tHZ�4v��&PZjtcï ¿½¿½ï¿½D�7_|����=8��Ø}
你知道爲什麼嗎?然而看着頁面源代碼和標題是相同的,使用相同的編碼...
原來,內容是gzipped,所以我可以告訴維基百科不要給我teir頁拉鍊或它的唯一途徑?謝謝
我更新了我的答案以解決您的gzip問題。 – erickson 2009-02-11 22:37:10