Tools › Data
Plist ⇄ JSON
Convert XML property lists (launchd jobs, Info.plist) to JSON and back, tab-indented like plutil.
About this tool What it's for, how to use it and an example
What it's for
Convert Apple property lists to JSON and back. Property lists are the XML files macOS and iOS use for settings, app Info.plist files and launchd jobs; JSON is easier to read, edit and use in scripts.
For example, when you want to read or tweak a launchd job or an app’s Info.plist, convert it to JSON, make your changes and convert it back.
How to use it
Paste an XML property list and choose Plist → JSON, or paste JSON and choose JSON → Plist. The plist output is tab-indented, like Apple’s plutil. Use as input moves the result back into the box for the return trip.
Example
Paste this launchd job and choose Plist → JSON:
<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.example.backup</string>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>3600</integer>
</dict>
</plist>
The result is {"Label": "com.example.backup", "RunAtLoad": true, "StartInterval": 3600}, laid out over several
lines.
Good to know
Binary plists need converting to XML first, on macOS: plutil -convert xml1 -o - file.plist. Dates become ISO 8601 text and data becomes Base64 text; converting back turns both into strings, so check those values before using the result.
Binary plists need converting first, on macOS: plutil -convert xml1 -o - file.plist.
<date> becomes ISO 8601 text and <data> Base64 text; converting back makes
both strings.
Private: this tool runs in your browser. Nothing you type, paste or choose leaves this page.
Saved you a few minutes? Say thanks with a coffee.
Something wrong with this tool, or missing from it? Report a bug or suggest a feature.