我正在开发一款Android应用。我正在使用Jsoup从页面中检索元素。然后,我正在迭代集合以获得它的每个部分。我不确定如何将元素的每个实例保存为不同的变量。我认为我可以使用for循环,但我不太明白。我如何确定选择的时长?我该如何使用它?我正在从这里检索元素:http://lapi.transitchicago.com/api/1.0/ttarrivals.aspx?key=201412abc85d49b2b83f907f9e329eaa&mapid=40380。我的代码如下:
public class TestStation extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test_station);
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Intent intent = getIntent();
String value = intent.getExtras().getString("value");
Uri my = Uri.parse("http://lapi.transitchicago.com/api/1.0/ttarrivals.aspx?key=201412abc85d49b2b83f907f9e329eaa&mapid="+value);
String myUrl = my.toString();
Document doc = null;
TextView tv1 = (TextView) findViewById(R.id.tv1);
try {
doc = Jsoup.connect(myUrl).userAgent("Mozilla/5.0 (Macintosh; U; Intel Mac OS X; de-de) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10").get();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Elements elem = doc.select("eta");
Iterator<Element> iterator = elem.iterator();
while(iterator.hasNext())
{ Element div = iterator.next();
Elements arrT = div.select("arrT");
Elements prdt = div.select("prdt");
Elements destNm = div.select("destNm");
Elements rt = div.select("rt");
String DestNm = destNm.text();
String Rt = rt.text();
tv1.setText(String.valueOf (Rt));
我想将arrT,pdrt和destNm的每个实例(有很多)存储为不同的变量。我怎么会这样做?谢谢你的帮助。
答案 0 :(得分:2)
您可以使用通用类型列表
ArrayList<Elements> xx = new ArrayList<Elements>();
然后在你的while循环中
xx.add(arrT);
答案 1 :(得分:0)
`你能为你感兴趣的属性创建一个带getter和setter的类,并创建一个数组吗?
编辑: 要创建你的课程:
public class YourClass {
private Element arrt;
...
public void setArrT (String input) {
arrt = input;
}
public Element getArrt() {
return arrt;
}
....
}
试一试。
答案 2 :(得分:0)
在Unicode和UTF-8之间传输
try {
String string = "\u201cGoodbye Athens thanks";
byte[] utf8 = string.getBytes("UTF-8");
string = new String(utf8, "UTF-8");
} catch (UnsupportedEncodingException e) {
}