|
Как ДокументDOM может прочитать объект CDATA[]? | ☑ | ||
---|---|---|---|---|
0
Garry1010
30.10.16
✎
20:44
|
Не пойму никак может ли объект ДокументDOM прочитать секцию CDATA? Речь о её содержимом. У меня вот записывается туда подчас много чего (это внутренние настройки для отчета) - так вот ЧтениеXML это содержимое прекрасно читает (правда, заглючило что-то - поэтому пробую вариант с ДокументDOM), а вот ДокументDOM - ничего не показывает.
Вариант самого XML примерно такой: <template> <![CDATA[]]></template> Узел template виден, но содержимого нет - только перенос строки и несколько табов внутри. |
|||
1
Torquader
30.10.16
✎
21:40
|
В DOM когда получаешь коллекцию дочерних элементов у того, кому CDATA запихали - один из дочерних элементов - будет секция CDATA - там для неё даже специальный код типа придуман.
Ну а потом через текст можно получить то, что в этой секции живёт. |
|||
2
Garry1010
30.10.16
✎
21:57
|
(1) Я же и говорю, что нет такого. Примерно вот так обходит всё и не натыкается на CDATA - то есть видит узел template, а в нём ничего не видит.
|
|||
3
Mauser
30.10.16
✎
22:12
|
(2) Новый ПараметрыЧтенияXML(<Версия>, <Язык>, <ПробельныеСимволы>, <ТипПроверкиПравильности>, <ИгнорироватьОбъявлениеXML>, <ИгнорироватьТипДокумента>, <ИгнорироватьИнструкцииОбработки>, <ИгнорироватьКомментарии>, <ИгнорироватьПробельныеСимволы>, <СекцииCDATAКакТекст>, <ИспользоватьИгнорируемыеПробельныеСимволы>)
предпоследний параметр. |
|||
4
Garry1010
30.10.16
✎
22:33
|
(3) Ага!!! Похоже на то - спасибо!
Странно, но раньше у меня и без этой хитрости прекрасно грузились настройки, но если они грузились не все, а лишь отдельные строки... Странно как-то. Но, блин, надо же было куда запихнуть такой параметр, да ещё так, что нельзя поменять его по ходу дела - только при создании объекта... |
|||
5
Garry1010
31.10.16
✎
10:18
|
В продолжение темы: каким образом может быть вот такой глюк (см. скрин на http://ixbt.photo/photo/297286/20917lZhyLSnXoe/IFkhkn1YO0/1159757.png), где Отладчик в Табло показывает одно значение (выделено рамкой), в вычисленном выражении - другое? И - ГЛАВНОЕ - как его решить, блин? Затрахался уже - который день глючит и хз что делать..:((
Главное, что реально туда попадает неверное значение - каким-то непонятным образом в атрибут залезает значение самого узла. Хотя там внутри xml нарисовано что-то типа такого: <record ПоказательТип="Строка" Показатель="Material production revenue" ИДТип="Строка" ИД="35030010"> |
|||
6
Garry1010
31.10.16
✎
14:29
|
Ещё чуть сбоку зайду: а строка вида
код = мЧтениеXML.ПолучитьАтрибут("ИД");
не сбивает ли текущую позицию чтения этого объекта мЧтениеXML? То есть не нарушается ли последовательность чтения атрибутов из узла XML? У меня (под Отладчиком) почему-то всё равно глючит и вместо атрибута узла почему-то читает имя самого узла. Вызов ПервыйАтрибут() перед циклом чтения атрибутов не помогает ни разу. А отладчик мне обязательно(!) нужен, чтобы выяснить, почему эта балда сбивает структуру дерева настроек (которое я, собственно, и загружаю). |
|||
7
Garry1010
31.10.16
✎
14:40
|
Сам спросил - сам отвечу. Да, похоже, где-то как-то сбивает. Если не ходить пошагово, то сия ошибка не возникает. А вот если шагать, то имя каким-то непонятным образом слетает. Буду делать как всегда - через одно место. Через промежуточные шаги, в смысле, - со списками да массивами. Шъёрт побъеры!(с)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |