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

Направление конвертации

Конвертация XLSX в CSV

Преобразование XLSX → CSV на сервере, без установки программ

.xlsx.csv

.xlsx.csv
  1. Загрузить
  2. Выбрать формат
  3. Скачать

Загрузка файлов

Область приёма файла

или

Файлы XLSX. До 5 МБ, до 20 файлов за раз. Изображение можно вставить из буфера обмена: Ctrl+V.

CSV хранит одну плоскую таблицу, поэтому сохраняется первый лист книги. Формулы записываются вычисленными значениями, оформление ячеек теряется.

Исходники и результаты хранятся 60 минут, затем стираются фоновым уборщиком. Предельный размер файла — 5 МБ, срок хранения — час.

XLSX и CSV: характеристики

Характеристики форматов XLSX и CSV рядом
Характеристика.xlsxXLSX.csvCSV
Полное названиеOffice Open XML WorkbookComma-Separated Values
РазработчикMicrosoftнет данных
Год появления2007нет данных
Расширение.xlsx.csv
MIME-типapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetнет данных
СодержимоеДвоичноеТекстовое
Несколько страниц в файлеПоддерживаетсяНет
СтруктураZIP-контейнер с XMLнет данных
Размер листа1 048 576 строк × 16 384 столбцанет данных
ФормулыХранятся вместе с результатами вычисленийнет данных
МакросыНе поддерживаются, только в XLSMнет данных
СтандартECMA-376 / ISO 29500RFC 4180
Чем открытьMicrosoft Excel, LibreOffice Calc, Google Таблицы, OnlyOffice, Apple Numbers, WPS OfficeMicrosoft Excel, LibreOffice Calc, Google Таблицы, Notepad++, VS Code, Блокнот
СпецификацияОписание форматаОписание формата
MIME-типынет данныхtext/csv, application/csv, text/comma-separated-values
Разделительнет данныхЗапятая, точка с запятой или табуляция
Экранированиенет данныхДвойные кавычки, кавычка внутри удваивается
Листынет данныхРовно один на файл
Формулы и оформлениенет данныхНе поддерживаются

Преобразование XLSX → CSV

CSV — плоский текст без типов: в нём нет ни числовых форматов, ни листов, ни объединённых ячеек, ни даже указания собственной кодировки. Есть строки, разделитель полей и правило экранирования кавычками из RFC 4180. Конвертация выгружает первый лист книги, заменяя формулы вычисленными значениями и записывая результат в UTF-8.

Из книги берётся первый лист: второго измерения у формата нет, и остальные листы выгружаются отдельными заданиями после перестановки нужного листа в начало. Теряется всё, что относится к представлению: шрифты, заливки, ширины столбцов, условное форматирование, диаграммы, примечания. Объединённая ячейка распадается — значение остаётся в первой позиции диапазона, соседние оказываются пустыми, потому что записать одно значение в несколько полей строки нельзя.

Разделитель выбирается параметром направления. Запятая — значение по умолчанию и международная норма, её ожидают скрипты, базы данных и веб-сервисы. Точка с запятой нужна для табличных редакторов с русской локалью, где запятая занята десятичным разделителем: файл с запятыми там открывается одной колонкой. Табуляция применяется, когда в самих данных много запятых. Значения, содержащие разделитель, кавычку или перевод строки, автоматически берутся в двойные кавычки, а внутренняя кавычка удваивается — это и есть правило RFC 4180.

Кодировка результата — UTF-8, но заявить её внутри файла формат не позволяет: признака кодировки в CSV нет вообще, и принимающая программа определяет её догадкой либо берёт системную. Отсюда известный эффект, когда двойной щелчок по файлу показывает кириллицу посторонними символами: байты при этом целы, а корректный путь — импорт с явным указанием набора символов и разделителя. Направление принимает несколько книг за задание.

Порядок преобразования XLSX → CSV

  1. Шаг 1

    Порядок листов

    Поставьте нужный лист первым: выгружается именно он. Хранить несколько таблиц в одном файле с разделителями формат не умеет — для этого потребуется отдельное задание на каждый лист.

  2. Шаг 2

    Разделитель полей

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

  3. Шаг 3

    Выгрузка

    Первая строка листа записывается заголовком, формулы заменяются вычисленными значениями, текст кодируется в UTF-8. Выгрузка сотен тысяч строк занимает секунды: тяжёлых преобразований в маршруте нет.

  4. Шаг 4

    Открытие результата

    Импортируйте файл с явным выбором кодировки UTF-8 и того же разделителя, а не открывайте двойным щелчком. Так числа и кириллица встанут на места с первого раза.

Вопросы по работе сервиса

Какой разделитель выбрать?

Ориентируйтесь на приёмник. Скрипты, базы данных и API ожидают запятую — это международная норма. Табличный редактор с русской локалью ожидает точку с запятой, потому что запятая у него занята десятичным разделителем. Табуляция нужна, когда оба символа встречаются внутри значений.

Почему кириллица показывается посторонними символами?

Файл записан в UTF-8, а программа прочитала его в однобайтовой системной кодировке. Указания кодировки внутри формата не существует, поэтому приёмник угадывает. Данные не испорчены: импортируйте файл, явно выбрав UTF-8, и текст отобразится верно.

Почему в файл попал только один лист?

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

Что произойдёт с длинными кодами и ведущими нулями?

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