Я хочу проанализировать файл XML из URL-адреса с помощью JDOM. Но при попытке это:
SAXBuilder builder = new SAXBuilder();
builder.build(aUrl);
Я получаю это исключение:
Invalid byte 1 of 1-byte UTF-8 sequence.
Я думал, что это может быть проблема с BOM. Итак, я проверил источник и увидел спецификацию в начале файла. Я попытался прочитать URL-адрес с помощью aUrl.openStream()
и удалить спецификацию с помощью Commons IO BOMInputStream. Но, к моему удивлению, он не обнаружил никакой спецификации. Я попытался прочитать из потока и записать в локальный файл и проанализировать локальный файл. Я установил все кодировки для InputStreamReader и OutputStreamWriter на UTF8, но когда я открыл файл, в нем были сумасшедшие символы.
Я думал, что проблема в кодировке исходного URL. Но когда я открываю URL-адрес в браузере, сохраняю XML в файл и читаю этот файл с помощью описанного выше процесса, все работает нормально.
Я ценю любую помощь по возможной причине этой проблемы.