Разбор xml с несколькими заголовками Talend - PullRequest
0 голосов
/ 26 апреля 2018

Я пытаюсь прочитать полученные XML-данные с несколькими заголовками

Пример:

<?xml version="1.0" encoding="utf-8"?>                         
 <RepeaterData>
<Version />
<Items>
    <Item>
        <year>2017</year>
        <Additional>
            <?xml version="1.0" encoding="utf-8"?>
            <RepeaterData>
                <Version />
                <Items>
                        <Name>toto</Nom>
                </Items>
            </RepeaterData>
        </AdditionalCharge>
    </Item>
    <Item>
        <year>2018</year>
        <Additional >
            <?xml version="1.0" encoding="utf-8"?>
            <RepeaterData>
                <Version />
                <Items>
                    <Item>
                        <element type="System.String">3</Sousdept>
                        <Name type="System.String">toto</Nom>
                        </Item>
                    <Item>
                        <element type="System.String">3</Sousdept>
                        <Name type="System.String">tata</Nom>
                        </Item>
                </Items>
            </RepeaterData>
        </Additional>
    </Item>
</Items>

Я также попытался удалить заголовок xml с помощью StringHandling.EREPLACE ( b ,"<?xml version=1.0 encoding=utf-8?>",""); но это не работает

Помогите пожалуйста !!!!

1 Ответ

0 голосов
/ 26 апреля 2018

Вот быстрое и грязное решение.Удалите все заголовки xml из вашего ввода, используя tReplace, и запишите результат в файл, в котором вы уже написали заголовок xml (так как ваш первый заголовок был удален).

enter image description here

tFileInputFullRow_1 будет вашим tRestClient.

tFileInputDelimited_2 содержит заголовок xml, написанный tFixedFlowInput_1.

tFileOutputDelimited_1 записывает в тот же файл, что и tFileOutputDelimited_2 в режиме Append.

Затем вы можете прочитать полученный XML-файл.

...