2010-01-06 1 views
1

Я использую чайник и пытаюсь загрузить как атрибут, так и значения узла из XML-документа.Одновременное чтение атрибутов и узлов в чайнике/ложке

<Colors> 
    <Color code="123">blue</Color> 
    <Color code="234">black</Color> 
    <Color code="456">green</Color> 
</Colors> 

Если я устанавливаю XPath петли для цветов я получить только одну строку, но он будет читать как код и значение.
пример:

Code | Color 
123 | blue 

Но если я устанавливаю XPath к цвету я получить 3 строки, но он не будет считывать значение для каждого элемента.
пример:

Code 
123 
234 
456 

Как я прочитал все элементы и как значение атрибута и узла в один проход?

Спасибо.

ответ

4

Используйте «Получить данные из шага XML» (вход категория) Установите Loop XPath в /Colors/Color На вкладке поля, нажмите кнопку «Получить Fields». Это добавит строку для

Name XPath Element Type Format Length Precision CurrencyDecimal Group Trim type Repeat 
code @code Node Integer       none N 

Теперь для значения элементов, добавить новую строку вручную в сетке, как это:

Name XPath Element Type Format Length Precision CurrencyDecimal Group Trim type Repeat 
value text() Node String       none N 

Другими словами, используйте стандартную text() функцию XPath для извлечения текстового содержимого из контекстного узла.

Как и всегда, используйте Предварительный просмотр строк, чтобы проверить результат. Я получаю это:

code value 
123 blue 
234 black 
456 green 
+0

Спасибо тонну! Это меня злило. – Dilbert789

+0

np, рад, что помогло. Существует несколько гадостей с созданием XML-элементов с атрибутами и текстовым контентом. –

Смежные вопросы