Получение преждевременного завершения файла Исключение - PullRequest
4 голосов
/ 14 сентября 2011

Я пытаюсь проанализировать существующий файл xhtml, чтобы добавить в него дополнительное содержимое тела.Я использую следующий код:

Сначала я читаю тело из Jsoup и пытаюсь поместить его в XhtmlFile

Document doc = Jsoup.parse(readFile, "UTF-8");
            Elements content = doc.getElementsByTag("body");

            try {
                 Document document=null;
                DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
                // Create the builder and parse the file
                document = (Document)factory.newDocumentBuilder().parse(finalFile);
                //document.getElementsByTagName("body")append(content.toString());              
                //document=parserXML(finalFile);                
                document.getElementsByTag("body").append(content.toString());

            } catch (SAXException e) {
                System.out.println("SAXException>>>>>>");
                e.printStackTrace();
            } catch (ParserConfigurationException e) {
                System.out.println("in  parser configuration Exception block>>>>>>");
                e.printStackTrace();
            }

Но я получаю следующее исключение:

[Fatal Error] ResultParsedFile.html:1:1: Premature end of file.
org.xml.sax.SAXParseException: Premature end of file.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
    at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)
    at com.converter.typeconverter.EmailTypeConverter.readHTML(EmailTypeConverter.java:101)
    at com.converter.typeconverter.EmailTypeConverter.callTika(EmailTypeConverter.java:64)
    at com.converter.master.ApplicationMain.main(ApplicationMain.java:64)

Пожалуйста, помогите мне в решении этой проблемы ...

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

Ответы [ 4 ]

2 голосов
/ 31 марта 2014

Если вы получаете эту ошибку в первой позиции файла (что указывает 1: 1), это означает, что файл пуст.

Может быть, вы начнете читать файл до того, как его закроет источник?

В случае, если вы используете входной поток (что здесь не так), это может произойти, когда вы повторно используете поток, который уже использовали для достижения конца файла. Вам необходимо создать новый поток из входного файла, чтобы сбросить его с начала файла.

1 голос
/ 14 сентября 2011

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

0 голосов
/ 22 ноября 2017

1.xml не читается.2. Чтобы исправить xml, единственный вариант - перетащить в электронную таблицу, ошибка будет выделена более четко. После внесения предложенного исправления xml будет окончательно загружен в электронную таблицу. После этого успешно загруженный xml не столкнется с проблемой синтаксического анализа

0 голосов
/ 24 марта 2016

Я недавно столкнулся с этой ошибкой, оказалось, что один из моих файлов .hbm.xml генерировался как пустой, ошибка генерировалась из контекста приложения xml, который ссылался на файл hbm

...