Архив

Архив категории Апрель 2016

Чтение XML — PCDATA invalid Char value

Парсить сайты — это всегда сложно. Написать универсальный парсер сайтов практически нереально. Я пару дней делал обработку, которая может принимать данные XML из программы Elbuz Content Creator и Elbuz PriceList Importer. Это могут быть каталог товаров, прайс лист цен поставщиков или конкурентов.

Так вот, я столкнулся с такой штукой. Если парсить сайты с помощью 1С, то это может закончится тем, что Вы не сможете это сделать из-за некоторых приколов с самим контентом. У меня произошел случай, когда в контенте попались символы BEL , DC2 , RS.

1С способна сама читать XML-файлы. Но именно с этими символами она ни в какую не хотела принимать данные. Эти символы не видны и лишь Notepad++ способен отобразить их в тексте через отображение всех символов, включая перевод каретки и прочие.

Символ BEL в недавнем времени один из самых используемых символов. Обычно, когда консоль встречала символ с кодом 7 (0x07), то выдавала звуковой сигнал.

Символ RS является разделителем записей в потоке данных. Этот символ вообще не выводится как визуальный символ, а лишь вызывает команду.

Символ DC2 — одна из команд управления устройством для чтения перфолент. Символ DC2 подает команду на включение перфоратора.

Исходя из выше написанного, можно с уверенностью сказать, что если Вы наставите этих символов в тексте описания товара, то такой текст спарсить в 1С не удастся 🙂

Категория: 1С Предприятие 8.2