Processed in your browser

CSV / Plist Converter

Converts CSV record arrays to readable XML Plist and restores supported Plist arrays to CSV. It accepts only row objects and rejects null, malformed XML, entities, and unsupported Plist structures.

Processed in your browser
0 / 1,000,000
Converted output

Tool guide

What is CSV / Plist Converter?

CSV and XML Property List Converter supports Apple configuration examples, test fixtures, and small readable data tables. CSV rows become dictionaries in a Plist array, while reverse conversion requires an array of dictionaries. Plist is a restricted serialization format rather than arbitrary XML; date and data nodes become strings for review, and entity declarations or unsafe structures are rejected. Common workflows include the following. Generate Apple configuration from CSV. Export a Plist array as a table. Review dictionary and scalar mapping. 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 Apple configuration from CSV.
  • Export a Plist array as a table.
  • Review dictionary and scalar mapping.

How to use it

  1. Choose a delimiter.
  2. Prepare a regular CSV table.
  3. Use XML Property List 1.0 for reverse conversion.
  4. Review strings and Apple value types.
  5. Load one of the realistic examples first to verify the selected options and processing direction before replacing it with your own data.
  6. 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

id,name,enabled
65,CSV Plist,true
66,TOML INI,false

Example 2

<?xml version="1.0" encoding="UTF-8"?>
<plist version="1.0"><array><dict><key>id</key><string>65</string><key>name</key><string>CSV Plist</string><key>enabled</key><true/></dict></array></plist>

Input rules

  • CSV headers must be unique.
  • Input Plist must use XML Property List 1.0.
  • Non-row dictionaries 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 Plist is supported.

Output rules

  • CSV rows become Plist dictionaries.
  • Date and data nodes become strings.
  • Comments and source formatting 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.
  • Plist to CSV requires an array of row dictionaries.

Limitations and cautions

  • Only XML Plist is supported.
  • Plist to CSV requires an array of row dictionaries.
  • Dates and data nodes become strings.

How your data is handled

All parsing, conversion, Base64 work, and intermediate data remain in the current browser tab. JSONLane does not upload the input or retain it after refresh or close.

FAQ

Is CSV or Plist data uploaded?

No. Parsing, conversion, and output generation stay in the current browser tab.

Is every round trip lossless?

No. Table typing, comments, layout, and binary-specific values differ between formats and must be reviewed.

Why does the converter reject some valid documents?

The source may be valid but still lack a safe, unambiguous representation in the selected destination.

Is binary Plist supported?

No. Only XML Property List is handled.

Why is an array required?

CSV is a multi-row table, so array items represent records.

How do dates enter CSV?

They are exported as strings for explicit review.

Updated: 2026-08-12