|
ДокументDOM получить часть XML | ☑ | ||
---|---|---|---|---|
0
YFred
17.09.15
✎
10:53
|
Нужно из XML файла выдрать кусок данных, например есть XML:
<doc> <qq> еще вложенные теги с атрибутами </qq> <rr> </rr> </doc> Нужно получить строку содержащую: <qq> еще вложенные теги с атрибутами </qq> Можно это сделать с помощью объекта ДокументDOM? |
|||
1
magicSan
17.09.15
✎
10:58
|
xpatch тебе в помощь. можно
|
|||
2
Fragster
гуру
17.09.15
✎
11:04
|
(0) более полно можешь описать задачу? зачем этот "кусок XML нужен"
|
|||
3
YFred
17.09.15
✎
11:06
|
нужно сохранить один узел XML как строку, без обработки.
|
|||
4
YFred
17.09.15
✎
11:15
|
Как получить заданный узел я знаю, как из типа "ЭлементDOM" получить его содержимое в виде xml?
|
|||
5
Fragster
гуру
17.09.15
✎
11:16
|
через построительDOM делаем документDOM,
через XPpath или любым другим методом находим нужный узел, копируем его вместе со всем подчинением, устанавливаем его в качестве элемента документа. |
|||
6
Fragster
гуру
17.09.15
✎
11:16
|
устанавливаем копию
|
|||
7
YFred
17.09.15
✎
11:47
|
Мне надо не скопировать узел, а получить его необработанное значение в виде строки XML
|
|||
8
Fragster
гуру
17.09.15
✎
11:49
|
(7) после того, как скопируешь и установишь корнем - надо документDOM записать в XML
|
|||
9
YFred
17.09.15
✎
12:00
|
пока сделал так:
Результат = ДокументDOM.ВычислитьВыражениеXPath("/путь/*",ДокументDOM,Разыменователь); Узел = Результат.ПолучитьСледующий(); ХМЛ=Новый ЗаписьXML; ХМЛ.ОткрытьФайл("c:\файл.xml"); ЗаписьДОМ=Новый ЗаписьDOM; ЗаписьДОМ.Записать(Узел,ХМЛ); ХМЛ.Закрыть(); чтение = Новый ТекстовыйДокумент; Чтение.Прочитать("c:\файл.xml"); Сообщить(чтение.ПолучитьТекст()); //то что нужно Но думаю можно как то легче, без записи в файл. Подскажите? |
|||
10
Fragster
гуру
17.09.15
✎
12:16
|
XML.УстановитьСтроку();
.... Сообщить(XML.Закрыть()) |
|||
11
YFred
17.09.15
✎
13:46
|
если без открытия файла сделать ЗаписьДОМ.Записать(Узел,ХМЛ);
вылетает ошибка, ругается на приемник ХМЛ |
|||
12
YFred
17.09.15
✎
13:54
|
разобрался :)
спасибо |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |