|
v7: Существует ли аналог НайтиНедопустимыеСимволыXML в 7.7 ? | ☑ | ||
---|---|---|---|---|
0
dimm7310
27.08.19
✎
12:52
|
На сайт выгружается большой XML файл, где то в нем есть недопустимый(е) символы. Файл не проходит проверку валидности на сайте.
Возможно ли при формировании файла проверять все строки на недопустимые символы? Не смог найти в инете решения для 7.7 |
|||
1
Злопчинский
27.08.19
✎
12:56
|
составь перечень недопустимых символов или допустимых символов и проверяй при формировании.
часто такими символами становятся символ табуляции и перевод строки |
|||
2
Ёпрст
27.08.19
✎
13:00
|
(0) ну дый проверяй xml по схеме, делов то.
|
|||
3
dimm7310
27.08.19
✎
13:13
|
(1) Может есть полный список таких символов?
|
|||
4
dimm7310
27.08.19
✎
13:18
|
сейчас при попытке открыть xml файл https://ibb.co/3M7Wm2d
такой или похожий символ можно получить по Alt26, в блокноте поиском не нашел. строка 56944 пустая |
|||
5
Карст
27.08.19
✎
13:43
|
оченно если копируют со всяких оутлоков в 1С , много неожиданных символов можно узнать ))
|
|||
6
MWWRuza
гуру
27.08.19
✎
15:17
|
Я вот такую функцию, правда для немного других, но похожих, целей писал:
Функция ПроверитьСтроку(Стр) ВалидСимв = "йцукеёнгшщзхъфывапролджэячсмитьбю.ЙЦУКЕЁНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,1234567890-=_+*%&$#№~*“”/\|@#qwertyuiop[]asdfghjkl;'zxcvbnm,./QWERTYUIOP{}ASDFGHJKL:""ZXCVBNM<>«»`()!? ±"; Если СтрДлина(Стр) < 84 Тогда Сообщить(Стр); КонецЕсли; Сч = 0; Для Сч = 1 По СтрДлина(Стр) - 1 Цикл Провсимв = Сред(Стр, Сч, 1); Если Найти(ВалидСимв, ПровСимв) = 0 Тогда Сообщить(Стр); КонецЕсли; КонецЦикла; КонецФункции Тут наоборот, список допустимых для моей задачи символов. И если в нем не находится проверяемый символ, то считается недопустимым и выводится соответствующее сообщение... |
|||
7
MWWRuza
гуру
27.08.19
✎
15:20
|
(5)Да, именно так. Проблемы у клиентов возникают иногда, именно после загрузки накладной из присланного по почке файла exel.
|
|||
8
NikVars
28.08.19
✎
12:09
|
(7) Есть еще в регламентированных отчетах, которые умеют выгружаться процедура ЗаписатьУзелВФайл, там есть обработка спец символов. Может будет полезно.
|
|||
9
MWWRuza
гуру
28.08.19
✎
12:57
|
(8)Это немного другое... Это "экранирование" всяких кавычек, и т.п., вот из комментария: При формировании символьной строки сиволы &, <, >, ", ' должны заменяться на последовательность символов &, <, >, ", &apos соответственно.
То-есть, это символы допустимые, но должны правильно передаваться. А тут, как я понимаю, всякие табы, ентеры и т.п... |
|||
10
NikVars
29.08.19
✎
09:24
|
(9) Ага, понимаю. Или удаляй из строки все символы с кодами меньше 32.
|
|||
11
ProgAL
29.08.19
✎
09:37
|
Посмотри в любой типовой функцию в общем модуле ОбщегоНазначения.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |