What is JSON / Plist Converter?
JSON and Plist Converter works with readable XML Property List configuration used by macOS, iOS, and Apple tooling. It supports dictionaries, arrays, strings, integers, reals, and booleans, rejects entity declarations and dangerous keys, and imports date or data nodes as explicit strings. Common workflows include the following. Generate readable XML Plist for an application example. Convert Plist configuration into JSON for comparison. Review dictionary, array, and boolean key/value structure. The page also documents input boundaries, output behavior, and practical cautions so you can review the result before putting it into an application, configuration, test, or production workflow.
When to use it
- Generate readable XML Plist for an application example.
- Convert Plist configuration into JSON for comparison.
- Review dictionary, array, and boolean key/value structure.
How to use it
- Choose JSON or XML Plist direction.
- Check that values use supported plist types.
- Convert and resolve malformed key/value pairs.
- Validate important output in the target Apple environment.
- Load one of the realistic examples first to verify the selected options and processing direction before replacing it with your own data.
- Review the output, status message, and documented limits; copy, download, or continue only after the result matches your expectation.
Runnable examples
The “Example 1” and “Example 2” buttons load the matching inputs. They cover different structures, directions, or boundaries and can be run directly in the workspace.
Example 1
{"CFBundleName":"JSONLane","Enabled":true,"Ports":[80,443],"Theme":{"Primary":"#10243E"}}Example 2
<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">
<dict>
<key>CFBundleName</key><string>JSONLane</string>
<key>Enabled</key><true/>
<key>Ports</key><array><integer>80</integer><integer>443</integer></array>
</dict>
</plist>Input rules
- Only XML Plist is accepted, not binary Plist.
- The plist root must contain exactly one data value.
- JSON null, entity declarations, and unsafe integers are rejected.
- Text input is counted before processing and is limited to 1,000,000 characters on this page; file modes apply the separate file limit shown in the workspace.
- Only XML Property List is supported, not binary Plist.
Output rules
- Output uses XML Property List 1.0 structure.
- Date and data values import as strings.
- XML comments, source whitespace, and key layout are not retained.
- Output reflects only the current input, direction, and options; rerun after changing a mode or value instead of treating an earlier result as current.
- JSON null has no representation.
Limitations and cautions
- Only XML Property List is supported, not binary Plist.
- JSON null has no representation.
- Date and data elements import as strings.
How your data is handled
All parsing, conversion, binary encoding, and intermediate data remain in the current browser tab. JSONLane does not upload the input or retain it after refresh or close.