Android - Почему SaxParser работает с локальным XML-файлом, а не с XML по URL-адресу?

Я успешно реализовал SaxParser в своем приложении для анализа XML-файлов. Мое приложение хорошо работает с другими онлайн-файлами XML, но не с определенными. Я открыл этот конкретный XML-файл в своем браузере, затем перешел к "источнику страницы", скопировал все и вставил в локальный XML-файл в моем проекте, и анализатор сработал.

Когда я пытаюсь проанализировать этот файл из его источника в Интернете, в Logcat я получаю сообщение об ошибке:

org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: syntax error 

Единственное, что приходит мне в голову, это то, что URL исходного файла выглядит примерно так: "example.com/showxml". Таким образом, URL не заканчивается расширением.xml.

Может ли это быть причиной ошибки?

Заранее спасибо!

Заметки:
1. Интернет-разрешение указано в моем манифесте.
2. Я не думаю, что в файле XML есть синтаксическая ошибка, так как она работала, когда я копировал и вставлял ее в локальный файл.

ОБНОВИТЬ:

Я загрузил файл XML на другой веб-сайт, чтобы попытаться получить от него доступ. И это сработало. Похоже, что моя проблема вызвана доменом, из которого я пытаюсь получить исходный файл.

2 ответа

Создайте дамп файла внутри android, возможно, ваш код использует неправильную кодировку char, bad bof и т. д.

К сожалению, я совершил огромную ошибку. Файл не был файлом XML, это был JSON. Но почему-то Firefox показывал его в формате XML, и это приводило меня в замешательство. Я предполагаю, что URL-адрес, по которому я звонил, был своего рода веб-сервисом, который может возвращать данные как в формате XML, так и в формате JSON. Во всяком случае, проблема решена. Спасибо всем, кто провел здесь минуту.

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