Skip to content
jsonblocks

How to open and read a JSON file online

A .json file is a text document containing structured data. Open it in jsonblocks to inspect the hierarchy and types locally; the file contents are not uploaded.

Open the JSON viewer

Open a local file

  1. Choose Open file above the input panel on the homepage.

  2. Select a .json file from your computer. The browser reads it locally.

  3. Read the validity status and document statistics, then expand the branches you need.

  4. Use Search keys and values to locate a field. Click a block to pin and copy its JSON path.

  5. Choose Format to pretty-print, or Copy to copy the input text. Keep the original file as a backup.

Try a sample first

json
{ "name": "demo", "enabled": true, "ports": [8080, 8443] }

Save this text as sample.json using UTF-8 encoding, then open it. The name is a string, enabled is a boolean, and ports is an array of numbers.

If the file is invalid

  • Check for a truncated download or an HTML error page saved with a .json extension.
  • JSON requires double quotes around keys and string values. Remove trailing commas and comments.
  • One file must contain one JSON document. JSONL has separate JSON values per line and needs a different workflow.
  • A large document may take time to parse depending on its shape, size, and your device. The editor preview is limited, but the original input remains available.

Privacy and precision

Your JSON stays in browser memory. Theme preference uses localStorage; document contents do not. Closing or refreshing loses unsaved input. Numbers are parsed using JavaScript number semantics, so formatting can round integers outside the safe integer range. Use strings for exact large identifiers and retain the original text.

Frequently asked questions

Can I open a JSON file on a phone?

Yes. Open file uses the device file picker where supported. The input and viewer stack vertically on smaller screens.

Is a .json file executable?

JSON is a data format. This viewer parses it as data and renders escaped text; it does not execute scripts contained in string values.