Чтение XML -файла Фатальная ошибка

1. user640247 26.04.20 22:36 Сейчас в теме
Добрый день. Пожалуйста, подскажите в чем может быть проблема... Читаю построчно XML-файл. Он читает-читает, а потом у меня появляется такая ошибка:
Ошибка при вызове метода контекста (Прочитать)
Пока ЧтениеXML.Прочитать() Цикл
Ошибка разбора XML: - [88,1]
Фатальная ошибка:
Extra content at the end of the document
Я так понимаю, что какая-то проблема с файлом? а что такое 88? строка в файле?
У меня в файле документы поступления за период, т.е. не один документ. Если строка 88, то там начинается как раз чтение данных по новому документу... Но в отладчике посмотрела, что обрывается не на строке 88, а раньше на пару строк...
вот такой формат файла:
<supplyorder>
<CL_ADDRESS>null</CL_ADDRESS>
(....) - читаются остальные данные
<spareList>
<spare><LN_COSTSUM>7,99</LN_COSTSUM></spare>
(...) несколько таких строк. Это типа табличная часть документа - в середине последней такой строки идет обрыв и ошибка
</spareList>
</supplyorder> далее идет пробел и чтение нового документа

<supplyorder> - вот это 88 строка
<CL_ADDRESS>null</CL_ADDRESS>
и по новой...
Может подскажите как обойти эту ошибку? Спасибо.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. ImHunter 315 27.04.20 08:07 Сейчас в теме
(1) Файл можно прочекать с помощью Notepad++ с установленным плагином XML Tools.
user1116973; user640247; +2 Ответить
13. Xershi 1484 28.04.20 14:15 Сейчас в теме
(1) ставим точку останова и анализируем. 88 это наверное номер символа в строке.
2. LifeRock 26.04.20 22:51 Сейчас в теме
далее идет пробел и чтение нового документа - может в этом и есть проблема? файл сам xml приложите
3. user640247 26.04.20 23:32 Сейчас в теме
там файл большой. Но вот я оставила в файле информацию об одном документе, так такой ошибки нет... как ее обойти? неужели на каждый документ должен быть свой файл?. У меня просто мало опыта по чтению XML-файлов((( может, подскажете что можно сделать...
4. LifeRock 27.04.20 00:12 Сейчас в теме
не подсказать пока не посмотришь, что там в файле
5. duhin 27.04.20 05:53 Сейчас в теме
Описание вашей ошибки "Лишний контент после конца документа". XML файл должен содержать один тег на первом уровне иерархии. Наверное у вас больше, вот он и ругается.
user640247; +1 Ответить
6. duhin 27.04.20 05:56 Сейчас в теме
Простой вариант проверить формат XML документа - открыть его хромом.
8. user640247 27.04.20 12:19 Сейчас в теме
вот файл. Да, получается у меня несколько первых уровней... и в хроме ошибка... и что делать?
Прикрепленные файлы:
9. VladimirB 16 27.04.20 15:52 Сейчас в теме
А проверьте точно ли у вас в 88 строке пустая строка? Может быть стоит какой-нибудь нечитаемый символ. У меня бывало, с каким не помню (может быть с кодом 160) тоже вылетало.
10. user640247 27.04.20 22:47 Сейчас в теме
(9) строка 88 - это начало нового уровня (нового первого)... надо как-то разбивать документы, наверное...
11. alexyav 28.04.20 11:38 Сейчас в теме
(10) Как вариант: сделать один тег верхнего уровня, а документы чтобы шли во втором
15. user640247 04.05.20 15:32 Сейчас в теме
(11) а как это сделать программно?
16. alexyav 05.05.20 16:28 Сейчас в теме
(15) Как понимаю, создание документов идёт в цикле?
Тогда перед циклом создать тег верхнего уровня с помощью метода ЗаписатьНачалоЭлемента("ИмяТегаВерхнегоУровня") и после цикла его закрыть методом ЗаписатьКонецЭлемента()
17. user640247 06.05.20 15:25 Сейчас в теме
(16) получается его как-то надо сначала прочитать, потом записать (добавить)... ведь этот метод доступен для записи xml.
18. alexyav 07.05.20 14:28 Сейчас в теме
(17)вообще-то это надо делать при формировании XML-файла. Если файл поступает уже таким и на его формирование никак не повлиять, то, как вариант, добавить теги вручную в редакторе
12. VladimirB 16 28.04.20 13:46 Сейчас в теме
вы найдите место в программе как у вас формируется пустая строка. может она вовсе не пустая.
Между
</supplyorder>
вот здесь что у вас на самом деле
<supplyorder>
14. user640247 04.05.20 13:24 Сейчас в теме
Всем добрый день!
В общем если делаю еще один тег верхнего уровня, то документы создаются, ошибки нет.
Но проблема в том, что я не могу повлиять на то, как выгружается файл.. как можно добавить программно этот тег?
19. dikusarjura 12.07.21 19:43 Сейчас в теме
Ребят подскажите что с этим делать Фатальная ошибка: Не удается восстановить данные после последней ошибки. Любые дальнейшие ошибки будут проигнорированы.

Из строки 197, колонка 1; в строку 197, колонка 328

>↩</head>↩<body data-rsssl=1 itemtype='https://schema.org/WebPage' itemscope='itemscope' class="home privacy-p…ader-custom-item-inside ast-single-post ast-inherit-site-logo-transparent ast-normal-title-enabled"> <div
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот