0
我是JAVA/Android開發新手。JSoup在變量中存儲文本
我做了一個應用程序,從HTML類中提取文本;
protected List<String> doInBackground(String... url) {
try {
Document doc = Jsoup.connect(
"http://example/test.html").get();
Elements st1 = doc.select("a[class*=subject_rating_details");
for (Element element : st1) {
sgrade[0] = st1.get(0).text();
sgrade[1] = st1.get(0).text();
sgrade[2] = st1.get(0).text();
sgrade[3] = st1.get(0).text();
sgrade[4] = st1.get(0).text();
}
} catch (IOException e) {
e.printStackTrace();
}
List<String> pinfo = null;
return pinfo;
}
@Override
protected void onPostExecute(List<String> pinfo) {
prog.dismiss();
}
}
List<ListData> varlist = new ArrayList<ListData>();
String sgrade[] = new String[] {};
我用JSoup來從HTML類=「subject_rating_details」我的網頁不同的文本中提取。
但它強制關閉上面的代碼。
我可以成功地用一個單一的字符串中提取它,例如:
for (Element element : st1) {
stringname = st1.get(0).text();
stringname = st1.get(1).text();
stringname = st1.get(2).text();
stringname = st1.get(3).text();
stringname = st1.get(4).text();
}
但它僅存儲最後一個(字符串名稱= st1.get(4)的.text();)
我我也試過:
for (Element element : st1) {
stringname1 = st1.get(0).text();
stringname2 = st1.get(1).text();
stringname3 = st1.get(2).text();
stringname4 = st1.get(3).text();
stringname5 = st1.get(4).text();
}
但我需要在st1中的文本在一個單一的變量。
我該怎麼辦?
感謝
編輯
我想是這樣的:
字符串sgrade [] =新的String [] {};
for (Element element : st1) {
sgrade[0] = st1.get(0).text();
sgrade[1] = st1.get(0).text();
sgrade[2] = st1.get(0).text();
sgrade[3] = st1.get(0).text();
sgrade[4] = st1.get(0).text();
}
女巫後,我能讀每個文本和一個TextView顯示它:
textview1.setText(sgrade[0]); <--/// This would display "Ford"
textview2.setText(sgrade[1]); <--/// This would display "Mustang"
textview3.setText(sgrade[2]); <--/// This would display "2013"
/// HTML ///
...
<p class="subject_rating_details">Ford</p>
<p class="subject_rating_details">Mustang</p>
<p class="subject_rating_details">2013</p>
...
/// HTML ///
好吧,我測試了這種方式,但它不適合我的需求。我想從JSoup中存儲字符串的文本,但更像列表,我可以使用像:textview.setText(stringname [0]); textview2.setText(字符串名稱[1]); – johnny243
好的,然後聲明字符串名爲列表和for循環添加每個文本值列表。 –
請給我一個示例代碼 – johnny243