json - 使用 Mule 中的 Dataweave 将定界文件转换为 JSON 格式

标签 json mule dataweave flat-file

我需要在 mule 中使用 dataweave 将现有的分隔 rune 件转换为 json 格式。

示例输入:

Name~#~ID~#~Company~#~Address
SRI~#~1~#~Infy~#~Bangalore
Rahul~#~2~#IBM~#~US
John~#~3~#~SF~#~UK

样本输出

{
Name: Sri
ID: 1
Company: Infy
Adress: Bangalore
},
{
Name: Rahul
ID: 2
Company: IBM
Adress: US

},
{
Name: John
ID: 3
Company: SF
Adress: UK
}

但是我的输出低于输出

Output

数据编织转换

Dataweave Transforamtion

最佳答案

非常有趣的问题,您可以使用 dw::core::Binaries 中的 readLines 函数,然后按 ~#~ 拆分。请记住将您的负载设置为 application/octet-stream mimeType,这样 dw 会将其作为二进制数据处理,稍后您可以使用此代码段来解析它。

%dw 2.0
output application/json
import dw::core::Binaries
var lines = Binaries::readLinesWith(payload, "UTF-8")


---
lines match {
    case [x ~ xs] -> do {
        var header = x splitBy  "~#~"
        ---
        xs map ((item, index) -> {
              (item splitBy "~#~" map (column, index) -> {
                  (header[index]): column
              } )
        })
    }
}

关于json - 使用 Mule 中的 Dataweave 将定界文件转换为 JSON 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64348854/

相关文章:

python - 如何用关键字搜索json文件中的某一行?

ruby-on-rails - 从 Rails 的 JSON 响应中寻找用于在 Angular 中进行通用错误处理的范例

javascript - jquery 简单的自动完成 url 功能

java - 在 mule studio 上使用 java 组件从数据库检索数据

java - 如何在 Mule 中的 message.OutboundAttachment 上应用 <base64-encoder-transformer/>

java - 骡子 http :inbound-endpoint get body of request

dataweave - 骡子 4/DW 2.0 : Iterate array inside objects of arrays

javascript - 尝试将数据插入 dynamoDB 表时无服务器 lambda 函数抛出错误

java - Mule ESB 两个 JSON 数组,使用 Dataweave 将一个数组合并到另一个数组中

dataweave - 如何在 Mulesoft 4.2 Dataweave 2.2 中导航多部分/表单数据?