Загрузка...
Загрузка...
Нашли баг, сбой или ошибку в работе сервиса? Есть предложение по улучшению? Напишите нам — мы читаем каждое сообщение и стараемся быстро исправлять проблемы.
Проверьте CSV файл онлайн: количество колонок, пустые ячейки, разделители. Поддержка запятой, точки с запятой, TAB.
Быстрые определения и связанные понятия из SEO-глоссария reChecker.
Минификация (minification) — удаление лишних символов из CSS, JS и HTML без изменения функциональности. Уменьшает размер файлов на 20-60%.
Читать в глоссарии →Мета-теги — HTML-элементы в секции head, передающие информацию о странице поисковикам и браузерам. Узнайте какие мета-теги важны для SEO.
Читать в глоссарии →CORS (Cross-Origin Resource Sharing) — механизм браузера для контроля запросов между разными доменами. Неправильная настройка CORS — угроза безопасности.
Читать в глоссарии →Форматируйте GraphQL запросы онлайн. Query, mutation, subscription. Синтаксис GraphQL, минификация, проверка.
УтилитыJSONPath синтаксис: $, .., [*], фильтры. Примеры запросов к JSON данным. Онлайн тестер JSONPath выражений.
УтилитыКак генерировать случайные тестовые данные онлайн: числа, строки, UUID, email-адреса, имена, цвета, IP-адреса. Применение в тестировании и разработке.
УтилитыПолное руководство по форматам штрих-кодов: EAN-13 для товаров, Code128 для логистики, Code39 для промышленности. Онлайн-генерация и проверка.
Поделитесь с коллегами или изучите другие материалы блога
CSV (Comma-Separated Values) — один из самых распространённых форматов обмена табличными данными. Несмотря на кажущуюся простоту, CSV-файлы регулярно вызывают проблемы при импорте и обработке.
CSV — текстовый формат, где каждая строка представляет запись, а поля разделены определённым символом. Формат настолько прост, что стандарт RFC 4180 был написан лишь в 2005 году — спустя десятилетия использования.
Основные причины, по которым CSV «ломается»:
\n без кавычек| Разделитель | Символ | Когда применяется |
|---|---|---|
| Запятая | , | Международный стандарт, API, JSON-подобные данные |
| Точка с запятой | ; | Excel в российской/европейской локали |
| TAB | \t | Данные с запятыми в полях, TSV-формат |
| Pipe | | | Данные, содержащие и запятые, и точки с запятой |
Проблема с Excel: в русскоязычной Windows Excel по умолчанию использует ; как разделитель, потому что , — разделитель дробной части числа. Из-за этого файл, корректный по международному стандарту, открывается в одну колонку.
Стандарт RFC 4180 определяет обязательные правила экранирования:
""# Корректный CSV
name,description,price
"Иванов, И.И.","Товар ""Особый""",1500.00
Петров П.П.,Обычный товар,750.00
# Ошибка — запятая внутри поля без кавычек
Иванов, И.И.,Товар,1500.00
Excel при сохранении в UTF-8 добавляет BOM (\xEF\xBB\xBF) в начало файла. Это ломает импорт в программах, не ожидающих BOM.
Решение при чтении в Python:
import csv
with open('data.csv', encoding='utf-8-sig') as f: # utf-8-sig убирает BOM
reader = csv.reader(f)
# Ошибочный файл
name,age,city
Иванов,30,Москва
Петров,25 ← только 2 поля вместо 3
Сидоров,40,Сочи,extra ← 4 поля вместо 3
Большинство парсеров выдадут ошибку или потеряют данные. Проверяйте файл перед импортом.
Разные операционные системы используют разные символы переноса строки:
\r\n (CRLF)\n (LF)\r (CR)RFC 4180 предписывает использовать \r\n, но на практике большинство парсеров принимают любой вариант.
Для конвертации CSV в структурированный JSON используйте CSV to JSON конвертер. Для работы с JSON-данными — JSON форматтер.
CSV валидатор на reChecker проверяет структуру файла: равное количество полей в каждой строке, корректность кавычек, обнаруживает BOM и определяет используемый разделитель автоматически.