writeLinesWith

DataWeave 2.2 is compatible and bundled with Mule 4.2. Standard Support for Mule 4.2 ended on May 2, 2021, and this version of Mule will reach its End of Life on May 2, 2023, when Extended Support ends.

Deployments of new applications to CloudHub that use this version of Mule are no longer allowed. Only in-place updates to applications are permitted.

MuleSoft recommends that you upgrade to the latest version of Mule 4 that is in Standard Support so that your applications run with the latest fixes and security enhancements.

writeLinesWith(Array<String>, String): Binary

Writes the specified lines and returns the binary content.

Introduced in DataWeave 2.2.0. Supported by Mule 4.2 and later.

Parameters

Name Description

content

Array of items to write.

charset

String representing the encoding to use when writing.

Example

This example inserts a new line (\n) after each iteration. Specifically, it uses map to iterate over the result of to(1, 10), [1,2,3,4,5], then writes the specified content ("Line $"), which includes the unnamed variable $ for each number in the array.

Note that without writeLinesWith "UTF-8", the expression { lines: to(1, 10) map "Line $" } simply returns an array of line numbers as the value of an object: { "lines": [ "line 1", "line 2", "line 3", "line 4", "line 5" ] }.

Source

%dw 2.0
import * from dw::core::Binaries
output application/json
---
{ lines: to(1, 10) map "Line $" writeLinesWith  "UTF-8" }

Output

{
  "lines": "Line 1\nLine 2\nLine 3\nLine 4\nLine 5\n"
}

Was this article helpful?

💙 Thanks for your feedback!

Edit on GitHub