Android, как разобрать этот пользовательский XML-тьфу?
Я реализовал XML Pull Parser для локального XML-файла, хранящегося в папке xml. Мне нужно реализовать то же самое для XML в некоторых целевых URL, как передать URL в парсер XML Pull?
я попробовал как этот код ниже, я получаю ошибку.
parser.setInput(new InputStreamReader(getUrlData(url)));
XML-файл выглядит так
<?xml version="1.0" encoding="UTF-8"?>
<resource-lists xmlns="urn:ietf:params:xml:ns:resource-lists">
<list name="friends">
<entry uri="sip:bob@example.com">
<display-name>subbu</display-name>
</entry>
<entry uri="sip:maa@example.com">
<display-name>raja</display-name>
</entry>
</list>
</resource-lists>
как читать эту информацию.
1 ответ
Решение
В xmlpullparser есть этот метод для получения данных с URL, вызовите эту функцию следующим образом
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
factory.setNamespaceAware(true);
XmlPullParser parser = factory.newPullParser();
parser.setInput(new InputStreamReader(getUrlData("url as string")));
функция для получения данных из URL.
public InputStream getUrlData(String url) throws URISyntaxException,
ClientProtocolException, IOException {
DefaultHttpClient client = new DefaultHttpClient();
HttpGet method = new HttpGet(new URI(url));
HttpResponse res = client.execute(method);
return res.getEntity().getContent();
}