Имя: Пароль:
1C
1С v8
v8: как ликвидировать непечатный символ в XML?
,
0 jsmith82
 
25.04.13
08:25
Ошибка при загрузке данных: {ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(1227)}: Ошибка при вызове метода контекста (Прочитать): Ошибка разбора XML:  - [20,810412]
Фатальная ошибка:
PCDATA invalid Char value 1
SystemId: file://D:/co/фермо/Перенос данных/Данные.xml

Открываю это чудо в XML Editor
Error loading %filename " ", шестнадцатиричное значение 0x01, является недопустимым знаком. Строка 20, позиция 733485

Можно как-нить убрать эти сиволы, не проводят ТИС? База огромная, ТИС будет идти несколько дней
1 Wobland
 
25.04.13
08:28
у меня такими вещами операторы занимаются. сами накосячили - сами убираются
2 Галахад
 
гуру
25.04.13
08:28
Гм. А если в 1С-ке открыть.
Файл \ Открыть
Да удалить символ?
3 MUXACb
 
25.04.13
08:34
(0) При выгрузке в XML на закладке Дополнительно поставь "Автоматически удалять недопустимые символы из строк для записи в XML"
4 jsmith82
 
25.04.13
08:38
(3) база семёрочная, там такого нет
5 Живой Ископаемый
 
25.04.13
08:39
не семерочная, раздел поставлен в8
6 jsmith82
 
25.04.13
08:39
открыл в WinHex
какой символ искать для 0x01?
7 Rie
 
25.04.13
08:40
(0) Убрать - откуда? Из XML-файла? При чём тут ТИИ?
8 Живой Ископаемый
 
25.04.13
08:41
там же написано специально для участников спец.олимпиад:  Строка 20, позиция 733485
9 jsmith82
 
25.04.13
08:42
(8) Делаю goto page 20, goto offset 733485, всё нормуль - символы хорошие
10 jsmith82
 
25.04.13
08:42
(7) это обычный совет на такого рода косяк
11 jsmith82
 
25.04.13
08:42
щас загуглил в хексе " "
по ходу это и есть злополучный 0x01
12 Живой Ископаемый
 
25.04.13
08:43
page? строка это page? буду исправлять в каждом словаре, в котором встречу другое.
13 jsmith82
 
25.04.13
08:45
заменил " " на "111"
щас попробую загрузить
14 jsmith82
 
25.04.13
08:45
(12) я понимаю, что это не совсем то, что имелось в виду
15 Rie
 
25.04.13
08:49
(0) Что-нибудь вроде
FSO = СоздатьОбъект("Scripting.FileSystemObject");
Текст = FSO.GetFile("ГдеОнТамЛежит.xml").OpenAsTextStream(1).ReadAll();
Рег = СоздатьОбъект("VBScript.RegExp");
Рег.Pattern = "\x01";
Рег.Global = 1;
Текст = Рег.Replace(Текст,"");
16 jsmith82
 
25.04.13
08:57
(14) ни хрена
17 jsmith82
 
25.04.13
09:00
(15) спс
18 jsmith82
 
25.04.13
09:03
убрал " " отовсюду
но ошибка прежняя!
19 jsmith82
 
25.04.13
09:03
как найти это смещение блеять
20 ДенисЧ
 
25.04.13
09:05
(19) Поблеять. Побиться головой об стену. Принять яду.
Что ещё можно посоветовать человеку, который не может найти символ в файле?
21 jsmith82
 
25.04.13
09:07
(20) точно
нашёл кнопку find hex values ))