Contact Us 1-800-596-4880

toLocalDateTime

toLocalDateTime(str: String, formatters: Array<Formatter>): LocalDateTime

Transforms a String value into a LocalDateTime value using the first Formatter that matches with the given value to transform.

Introduced in DataWeave version 2.5.0.

Parameters

Name Type Description

str

String

The String value to transform into a LocalDateTime value.

formatters

Array<Formatter>

The array of formatting to use on the LocalDateTime value.

Example

This example shows how toLocalDateTime behaves with different inputs. It produces output in the application/dw format.

Source

%dw 2.0
import * from dw::util::Coercions
import * from dw::Runtime
output application/dw
---
{
  a: toLocalDateTime("2003-10-01 23:57:59", [{format: "uuuu/MM/dd HH:mm:ss"}, {format: "uuuu-MM-dd HH:mm:ss"}]),
  b: try(() -> toLocalDateTime("2003-10-01 23:57:59", [{format: "uuuu/MM/dd HH:mm:ss"}])).error.message
}

Output

{
  a: |2003-10-01T23:57:59| as LocalDateTime {format: "uuuu-MM-dd HH:mm:ss"},
  b: "Could not find a valid formatter for '2003-10-01 23:57:59'"
}

toLocalDateTime(str: String, format: String | Null = null, locale: String | Null = null): LocalDateTime

Transforms a String value into a LocalDateTime value and accepts a format and locale.

Introduced in DataWeave version 2.4.0.

Parameters

Name Description

str

The String value to transform into a LocalDateTime value.

format

The formatting to use on the LocalDateTime value. A null value has no effect on the LocalDateTime value. This parameter accepts Java character patterns based on ISO-8601. A LocalDateTime value, such as 2011-12-03T10:15:30.000000 has the format uuuu-MM-dd HH:mm:ss.

locale

Optional ISO 3166 country code to use, such as US, AR, or ES. A null or absent value uses your JVM default.

Example

This example shows how toLocalDateTime behaves with different inputs. It produces output in the application/dw format.

Source

%dw 2.0
import * from dw::util::Coercions
output application/dw
---
{
  a: toLocalDateTime("2015-10-01T23:57:59"),
  b: toLocalDateTime("2003-10-01 23:57:59","uuuu-MM-dd HH:mm:ss")
}

Output

{
  a: |2015-10-01T23:57:59|,
  b: |2003-10-01T23:57:59| as LocalDateTime {format: "uuuu-MM-dd HH:mm:ss"}
}