EN
My tools

Properties to YAML / JSON Converter (and back)

Convert Java .properties (Spring Boot application.properties) to nested YAML or JSON, or JSON/YAML back to .properties, with \uXXXX, continuations and [0] lists.

.properties values are always text; turn this on if the reader converts types (Spring does).
My tools →
Advertisement

Spring Boot reads its settings from application.properties or application.yml, and moving between the two by hand is slow and error-prone. This tool reads a .properties file exactly as Java does — =, : or a space between key and value, backslash line continuations, \uXXXX escapes, # and ! comments — and writes the same settings as nested YAML or JSON. It also goes the other way, flattening JSON or YAML into key=value lines with list indexes such as servers[0].

How to use this tool

  1. Paste the .properties text (or JSON/YAML for the reverse direction).
  2. Choose the direction.
  3. Keep "Nest dotted keys" on to build a tree, and "[0] indexes into lists" for Spring Boot lists.
  4. Copy the YAML, JSON or .properties result.

Formula

a.b.c=v → a: b: c: v · list[0]=x → list: [x] · \uXXXX → the character · line ending in \ → continues

Keys end at the first unescaped =, : or whitespace; the separator and spaces around it are skipped, and the value keeps everything else, including trailing spaces. A line that ends in an odd number of backslashes continues on the next line without its leading spaces. Escapes \t \n \r \f and \uXXXX are decoded; any other escaped character stands for itself. When a key appears twice the last one wins, as in Java. Values stay text unless you ask for numbers and booleans to be typed (only values that a number writes back exactly, so 1.50 stays "1.50"). Going back to .properties, numbers are copied exactly as written in the JSON or YAML (1.10 stays 1.10, long ids keep every digit), and YAML merge keys are applied.

Example

The sample's spring.datasource.url and spring.datasource.username: app end up under spring → datasource; server.port = 8080 becomes port: "8080" (text, as in the file); app.greeting=Hello\, w\u00f6rld decodes to Hello, wörld; app.servers[0] and [1] become a two-item list; and the description that continues over two lines becomes one value. Nine keys are converted in all.

Frequently asked questions

Why is 8080 in quotes?

A .properties file has no types — every value is text. Spring converts "8080" to a number when it binds it, so both forms work; tick the option to write numbers and booleans unquoted.

How do I keep a key with dots in it?

Spring Boot uses brackets for map keys that contain dots: logging.level.[com.example]=DEBUG. The converter reads that form, and writes it when going back to .properties.

Which encoding should the .properties file use?

Java's Properties.load(InputStream) reads ISO-8859-1, so non-ASCII characters are safest as \uXXXX escapes (the default here). Spring Boot and Properties.load(Reader) can read UTF-8.

Is my configuration uploaded?

No. The conversion runs in your browser, so passwords in the file never leave your device.

Sources

Last updated:

Cite or embed this tool
APA

kakaoCalc. (2026, November 8). Properties to YAML / JSON Converter (and back). https://kakao.mobile/tools/properties-to-json-tool/

MLA

“Properties to YAML / JSON Converter (and back).” kakaoCalc, 8 Nov. 2026, kakao.mobile/tools/properties-to-json-tool/.

Paste this code into your page. The widget runs in your visitors' browsers, shows no ads and keeps a link back to this page. Embedding terms

Advertisement