Попытка получить XML из URL
Ранее я использовал файл XML из папки активов. Приложение может прочитать это очень хорошо. Следующим шагом я хочу разместить этот XML на веб-сервере. Но на этом этапе приложение не может распознать какие-либо данные. Это смутило меня пару дней.
AssetManager asset = getAssets();
InputStream input = asset.open("student.xml");
List<Student> list = ParserByPULL.getStudents(input);
Все отлично работает, если файл в папке активов. Затем я попытался получить его из URL.
String path = "http://fthgyj.tup632.cnaaa11.com/student.xml";
URL url = new URL(path);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000);
conn.setRequestMethod("GET");
InputStream input = url.openConnection().getInputStream();
List<Student> list = ParserByPULL.getStudents(input);
Я добавил разрешение на подключение к Интернету в файле манифеста. У кого-нибудь есть идеи по этому поводу?
2 ответа
Я думаю, вам нужно позвонить
conn.connect();
InputStream input = conn.getInputStream();
А затем проверьте, что вы получили xml:
BufferedReader reader = new BufferedReader(new InputStreamReader(input));
StringBuilder builder = new StringBuilder();
String line;
while ((line = reader.readLine()) != null) {
builder.append(line);
}
reader.close();
Log.d("tag", "output: " + builder.toString());
Попробуйте это, чтобы вытащить и разобрать файл XML с URL,
http://www.javacodegeeks.com/2010/11/boost-android-xml-parsing-xml-pull.html