Попытка получить 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

Другие вопросы по тегам