2016-07-28 4 views
0

У меня есть поток данных в потоке мула, который преобразует pojo в CSV. Итак, одно из полей в Pojo имеет значение как: «abc, def»Как устранить escape-символ в Dataweave при преобразовании в CSV в Mule?

Итак, когда информация о передаче данных преобразуется в CSV, ответ является abc \, def. Добавляется символ запуска по умолчанию.

Пожалуйста, дайте мне знать, как мы избавляемся от этого экранирующего символа и имеет значение, как CSV: азбука, Защита

Спасибо.

ответ

0

По умолчанию DataWeave будет избегать запятой, чтобы избежать двусмысленности/ошибки данных. Например:

column1,column2,column3 
abc,def,1234567,xxxyyyz 

Какое значение COLUMN2, Защиту или ?

Для того, чтобы сохранить запятых, то есть два других варианта:

  1. Изменение CSV разделитель с другим символом, например .: |. Затем примените следующий код: %output application/csv separator="|". Он произведет результат как: abc, def | 1234567 | xxxyyyz
  2. Оберните значение внутри символов кавычек, например .: «abc, def». Затем примените %output application/csv quoteValues=true. Он будет производить: "ABC, DEF", "1234567", "xxxyyyz"
+0

Использование '% выхода приложения/CSV quoteValues ​​= true' все еще добавляет escape-символ –

0

Я обнаружил, что следующий код устранит экранирующий символ в DW:

%output application/csv header=true, escape="null" 
+1

Это не так. Мои извинения, я неправильно прочитал свой результат. – Matt