Neatbo.

Java Properties and JSON converter

Decode Java .properties escapes and continuations, or export a string-valued JSON map as an ASCII properties file.

Browser-local processingInputProperties / JSONOutputJSON / PropertiesUp to 1 MiB per file · File limit: 1
  1. 1Add input
  2. 2Adjust settings
  3. 3Get your result

Tool input and files are processed in this browser without being uploaded.

Your input

Inputs are kept temporarily in this tab when switching tools. Refreshing or closing clears them; large results may need to be regenerated.

⌘ / Ctrl + Enter to run

or drag and drop it here

Files stay on this device. Your originals stay unchanged.

.properties · .json · .txt

Up to 1 MiB per file · File limit: 1

    0 characters · 0 bytes
    Options

    Complete the required options first. You can keep the defaults for the rest.

    Preparing the tool…

    Before you start

    Move localization messages and Java configuration between .properties and JSON. Java escape rules are applied locally; export uses Unicode escapes so the result can be loaded from an ASCII-compatible byte stream.

    How to use this tool

    1. Choose Properties to JSON or JSON to Properties, then paste content or open a UTF-8 file.
    2. Review Unicode escapes, line continuations and key separators. Fix duplicate decoded keys; use a flat string map for JSON input.
    3. Inspect the keys and values. Copy or download the full result, and test the configuration in its receiving application.

    Supported inputs and limits

    One UTF-8 input or file, at most 1 MiB and 50,000 physical lines. Selected files take precedence over pasted text. For legacy Latin-1 files, first convert the text encoding to UTF-8. The page previews 200 entries; the download is complete.

    Uses Java Properties.load(Reader) rules: =, : or unescaped whitespace separate key and value; odd trailing backslashes continue a line. Unicode escapes use exactly four hex digits after one u. Unknown escapes drop the backslash, as Java does.

    Duplicate decoded keys are rejected instead of retaining the last occurrence. JSON must be a flat object containing only string values. Empty keys and empty values are supported; comments, original spacing and ordering guarantees are not transferred.

    JSON to Properties emits ASCII with Unicode escapes, including surrogate pairs. It does not expand Spring placeholders, run code, load XML properties, or configure an application. Check the exported settings before use.

    Worked example

    Example input

    hello=\u4f60\u597d
    fruits=apple, \
      banana
    cheeses
    
    Example options
    {"direction": "to-json"}

    Example output

    {
      "hello": "你好",
      "fruits": "apple, banana",
      "cheeses": ""
    }

    When something does not work

    Check the selected direction and fix malformed \uXXXX escapes or duplicate decoded keys. JSON values must all be strings. Remove a selected file to process pasted text.

    Frequently asked questions

    How are continued lines joined?

    An odd number of trailing backslashes removes the line break and the leading space, tab or form feed on the next line. It does not insert a space; a space before the backslash remains.

    Are Windows paths treated literally?

    Java properties use backslash escapes. Write a literal backslash as \\. Unknown escapes remove the backslash, so an unescaped Windows path can change meaning.

    Can Java load the exported file as bytes?

    Yes, the output uses ASCII characters and Java Unicode escapes. It is suitable for Properties.load(InputStream); keep the original when migrating comments or application-specific behavior.

    Documentation & further reading

    Related tools