Перейти к содержимому
PulsarKit

Объединить CSV

Объедините выгрузки с разным порядком колонок, разными кодировками и лишними полями в один аккуратный CSV.

Перетащите файлы сюда

.csv, .tsv, .txt · до 300 МБ

Как объединить файлы

  1. 1

    Перетащите два или больше CSV

    До двадцати файлов за раз. Кодировка и разделитель для каждого файла определяются отдельно, так что смешанный набор — не проблема.

  2. 2

    Проверьте, как сопоставились колонки

    По имени — вариант по умолчанию, он выдерживает разный порядок колонок. «Точное» требует одинаковых заголовков. «По позициям» полностью игнорирует имена.

  3. 3

    Объедините и скачайте итоговый CSV

    Вернется один файл, не архив — с разделителем и кодировкой, которые ожидает ваша следующая система.

Три способа выровнять колонки и когда какой подходит

Сопоставление по имени — то, что обычно имеют в виду под объединением. В мартовской выгрузке колонки идут id, name, email, а в апрельской — name, email, id. В результате все строки должны попасть в одни и те же три колонки. Сравнение не учитывает регистр и пробелы по краям, так что « ID » и «id» считаются одной колонкой. Точное сопоставление нужно, когда одинаковая структура — требование, а не надежда. При расхождении объединение останавливается и для каждого файла перечисляются недостающие и лишние колонки. Такая проверка нужна перед загрузкой данных в систему регулятора. Вариант «по позициям» игнорирует заголовки целиком и подходит для файлов без них или с ненадежными заголовками. При разных количествах колонок объединение останавливается и сообщает оба числа.

Новая колонка в одном файле — не ошибка

Чаще всего бывает так: кто-то добавил поле посреди года. При сопоставлении по имени эта колонка добавляется в конец канонического списка. Строки из более ранних файлов получают в ней пустое значение, а в уведомлении указано, какая колонка появилась позже остальных. Почти всегда это лучше, чем полностью отказываться от объединения, и это обратимо: вы увидите новую колонку в результате и сможете ее удалить. Файлы без единой строки данных пропускаются и учитываются в отчете, но не прерывают выполнение.

Смешанные кодировки и одна мера безопасности

Каждый входной файл анализируется отдельно. Поэтому выгрузка Windows-1251 из бухгалтерской программы без проблем объединяется с UTF-8 из веб-приложения, и кириллица в обеих сохраняется. Кодировку результата вы выбираете сами. По умолчанию используется UTF-8 с BOM, чтобы Excel корректно открыл файл. И одно изменение вносится намеренно: любое значение, которое начинается с =, +, - или @, дополняется апострофом в начале. Таблицы воспринимают такие значения как формулы, а объединенный файл из данных, которые вводили не вы, — тот случай, когда защита от формульной инъекции особенно важна.

Все происходит в этой вкладке

Каждый файл читается, разбирается и объединяется локально в вашем браузере. Ничего не загружается на сервер. Это важно: при объединении обычно сводятся вместе несколько частичных выгрузок клиентов или транзакций.

Частые вопросы

Что делать, если в файлах разные колонки?

При сопоставлении по имени по умолчанию результат содержит объединенный список всех колонок в порядке первого появления. Строки из файлов без какой-то колонки получают там пустое значение. В уведомлении перечисляются колонки, которые появились только в более поздних файлах.

Как убрать дублирующиеся строки?

Включите опцию удаления дубликатов. Строки сравниваются по всем значениям, первая встреченная версия каждой сохраняется, а количество отброшенных дубликатов показывается отдельно, чтобы вы могли проверить результат.

Можно ли объединить файлы с разными кодировками?

Да. Кодировка определяется для каждого файла отдельно: сначала по BOM, затем строгой проверкой UTF-8 и в конце эвристикой между Windows-1251 и Windows-1252. Поэтому смешанный набор объединяется без «кракозябр».

Для чего нужна колонка __source_file?

Если включить эту опцию, колонка становится первой и хранит имя файла, из которого пришла каждая строка, без расширения. Это самый простой способ отследить подозрительную строку до исходного файла после объединения.

В каком порядке строки попадают в результат?

По умолчанию — в порядке, в котором вы добавили файлы. Если переключиться на сортировку по имени файла, используется естественный порядок: file2 будет перед file10, а не после него.

Что если один из файлов оказался Excel?

Если содержимое файла начинается с сигнатуры ZIP, значит это XLSX, переименованный в .csv. Объединение останавливается, в сообщении указывается имя такого файла и дается ссылка на конвертер Excel в CSV.

Точно ли ничего не загружается?

Да. Чтение, разбор, сопоставление и запись происходят целиком в вашем браузере, а объединенный файл создается локально без участия сервера.

Похожие инструменты

Разделить CSVРазделите большой CSV на равные части или на отдельные файлы по значению столбца — с тем же заголовком, разделителем и кодировкой в каждой части.CSV в JSONПреобразуйте выгрузку таблицы в JSON, NDJSON или обычные массивы. Разделитель и кодировка текста подбираются автоматически.CSV в ExcelПреобразуйте CSV-выгрузку в полноценную книгу XLSX, которая сразу открывается по столбцам — без мастера импорта, битых букв и пропавших ведущих нулей.JSON в CSVПревратите ответ API или экспорт NDJSON в таблицу, где каждое поле из каждой записи становится отдельным столбцом.Хеш файлаПолучите все контрольные суммы файла или строки за один проход и вставьте ожидаемое значение, чтобы сразу увидеть, совпадает ли оно.Создать ZIPУпакуйте файлы или целую папку в один архив. Структура папок сохраняется, а уже сжатые фото и видео не пережимаются зря.