0
我一直在試圖從該URL http://www.isleworthsyon.hounslow.sch.uk/中的Java/Android的爲什麼Jsoup刮數據不同
我試着刮在Java中的文本刮「學校公告」,然後全部換成「」(這我不是確定它是什麼字符,)用一個新的線使用String.replaceAll方法,它的工作絕對好,結果完美,但是當我將相同的代碼應用到Android上時,它給了我不同的結果。
在Java:
String URL = "http://www.isleworthsyon.hounslow.sch.uk/";
Document site = null;
try {
site = Jsoup.connect(URL).get();
} catch (IOException e) {
e.printStackTrace();
}
String HTML = site.html();
site.select("a").remove();
Elements news = site.select("div#np_91983-1");
String output = news.text();
String for_output_text = output.replaceAll(" ","\n\n");
System.out.println(for_output_text);
}
}
Android中:
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final TextView text = (TextView)findViewById(R.id.text);
String URL = "http://www.isleworthsyon.hounslow.sch.uk/";
Document site = null;
try {
site = Jsoup.connect(URL).get();
} catch (IOException e) {
e.printStackTrace();
}
site.select("a").remove();
Elements news = site.select("div#np_91983-1");
String output = news.text();
String for_output_text = output.replaceAll(" ","\n\n");
text.setText(for_output_text);
}
兩個輸出文本是不同的,因爲你可以看到下面
http://dl.dropbox.com/u/35866688/Comparison.png
順便說一句,這是我在網上第一次去刮
編輯:實驗後,我從news.text()得到的字符串在Java和Android的不同間距。任何建議,爲什麼是這種情況,有沒有其他的選擇?
作爲關注點,它仍然是「在Java中」在Android上運行時。但是你沒有描述什麼不同,只顯示了兩個基本相同的代碼塊。 – 2012-02-09 21:51:08
對不起,我知道這兩個都是用Java編寫的,但我不能很快提出一個可以區分它們的術語。順便說一句,我已經提出了這個問題。 – 2012-02-09 22:13:59
請調試你的代碼,並使用diff比較字符串,而不是隻看TextView – marcosbeirigo 2012-02-09 22:16:00