Talend — Преобразовать строку в массив строк JSON

#json #talend

#json #talend

Вопрос:

Я использую Talend Studio для интеграции данных для обработки данных. Данные хранятся в XML-файле, затем преобразуются в файл JSON. Один из столбцов (partners) является строковым элементом, разделенным разделителем «;».

пример: «партнер1; партнер2; партнер3»

ожидаемый результат: [«партнер1», «партнер2», «партнер3»]

Есть ли какая-либо функция Talend для этого? или я могу использовать функции Java?

Комментарии:

1. Не могли бы вы, пожалуйста, подробно объяснить, что именно вы сделали до сих пор и с какой проблемой вы сталкиваетесь в настоящее время

Ответ №1:

Работа с данными Json в Talend довольно сложна. Вы можете достичь желаемого с помощью компонентов Talend, но рабочий процесс не так прост.

введите описание изображения здесь

  1. tFileInputXML: извлечь данные из вашего xml
  2. tNormalize : привести в норму столбец, в котором у вас есть несколько вхождений (здесь я использовал «;» в качестве разделителя). Количество строк в выходных данных — это количество элементов в вашем столбце (в вашем примере: 3)
  3. tMap: я сопоставил свой столбец и добавил фиксированное поле «цикл» для следующего компонента введите описание изображения здесь
  4. tWriteJsonField : здесь вам нужно использовать атрибуты и циклы для получения массива. смотрите скриншот. введите описание изображения здесь
    введите описание изображения здесь

Ваш вопрос довольно прост, но разрешение — нет. Если у кого-то есть лучший способ сделать это, мне любопытно на это посмотреть.