Как удалить недопустимые символы XML?
При работе с XML бывает возникает ошибка разбора XML, т.к. в нем есть символы которые не предусмотрены для использования в файлах такого типа. И для того чтобы их находить в платформе 1С 8 есть метод "НайтиНедопустимыеСимволыXML". Испольлзовать его можно следующим способом:
Функция УдалитьНедопустимыеСимволыXML(СтрокаХМЛ)
Позиция = НайтиНедопустимыеСимволыXML(СтрокаХМЛ);
Пока Позиция <> 0 Цикл
НедопустимыйСимвол = Сред(СтрокаХМЛ, Позиция,1)
СтрокаХМЛ = СтрЗаменить(СтрокаХМЛ, НедопустимыйСимвол, "");
Позиция = НайтиНедопустимыеСимволыXML(СтрокаХМЛ);
КонецЦикла;
Возврат СтрокаХМЛ;
КонецФункции
Для ускорения поиска можно при определении позиции недопустимого символа, внутри цикла, передавать в функцию поиска начальную позицию поиска
Позиция = НайтиНедопустимыеСимволыXML(СтрокаХМЛ, Позиция);