Направление конвертации
Конвертация XLSX в CSV
Преобразование XLSX → CSV на сервере, без установки программ
- Загрузить
- Выбрать формат
- Скачать
Загрузка файлов
Область приёма файла
или
Файлы XLSX. До 5 МБ, до 20 файлов за раз. Изображение можно вставить из буфера обмена: Ctrl+V.
CSV хранит одну плоскую таблицу, поэтому сохраняется первый лист книги. Формулы записываются вычисленными значениями, оформление ячеек теряется.
Исходники и результаты хранятся 60 минут, затем стираются фоновым уборщиком. Предельный размер файла — 5 МБ, срок хранения — час.
XLSX и CSV: характеристики
| Характеристика | .xlsxXLSX | .csvCSV |
|---|---|---|
| Полное название | Office Open XML Workbook | Comma-Separated Values |
| Разработчик | Microsoft | нет данных |
| Год появления | 2007 | нет данных |
| Расширение | .xlsx | .csv |
| MIME-тип | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | нет данных |
| Содержимое | Двоичное | Текстовое |
| Несколько страниц в файле | Поддерживается | Нет |
| Структура | ZIP-контейнер с XML | нет данных |
| Размер листа | 1 048 576 строк × 16 384 столбца | нет данных |
| Формулы | Хранятся вместе с результатами вычислений | нет данных |
| Макросы | Не поддерживаются, только в XLSM | нет данных |
| Стандарт | ECMA-376 / ISO 29500 | RFC 4180 |
| Чем открыть | Microsoft Excel, LibreOffice Calc, Google Таблицы, OnlyOffice, Apple Numbers, WPS Office | Microsoft 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
Порядок листов
Поставьте нужный лист первым: выгружается именно он. Хранить несколько таблиц в одном файле с разделителями формат не умеет — для этого потребуется отдельное задание на каждый лист.
Шаг 2
Разделитель полей
Запятая — для скриптов, баз данных и внешних сервисов. Точка с запятой — если файл будут открывать в табличном редакторе с русской локалью. Табуляция — когда запятые и точки с запятой встречаются в самих значениях.
Шаг 3
Выгрузка
Первая строка листа записывается заголовком, формулы заменяются вычисленными значениями, текст кодируется в UTF-8. Выгрузка сотен тысяч строк занимает секунды: тяжёлых преобразований в маршруте нет.
Шаг 4
Открытие результата
Импортируйте файл с явным выбором кодировки UTF-8 и того же разделителя, а не открывайте двойным щелчком. Так числа и кириллица встанут на места с первого раза.
Вопросы по работе сервиса
Какой разделитель выбрать?
Ориентируйтесь на приёмник. Скрипты, базы данных и API ожидают запятую — это международная норма. Табличный редактор с русской локалью ожидает точку с запятой, потому что запятая у него занята десятичным разделителем. Табуляция нужна, когда оба символа встречаются внутри значений.
Почему кириллица показывается посторонними символами?
Файл записан в UTF-8, а программа прочитала его в однобайтовой системной кодировке. Указания кодировки внутри формата не существует, поэтому приёмник угадывает. Данные не испорчены: импортируйте файл, явно выбрав UTF-8, и текст отобразится верно.
Почему в файл попал только один лист?
Потому что формат хранит ровно одну плоскую таблицу. Ни листов, ни вкладок, ни ссылок между ними в нём нет. Выгружается первый лист книги; чтобы получить остальные, поставьте нужный первым и повторите задание.
Что произойдёт с длинными кодами и ведущими нулями?
В файл попадает то, что хранится в ячейке. Если артикул или номер счёта уже лежал в книге как текст, ведущие нули сохранятся; если он был числом, нулей там не было и раньше. Типов данных формат не хранит вовсе, поэтому интерпретацию задаёт уже принимающая программа.