Откройте или вставьте CSV-файл и получите корректный (well-formed) XML: корневой элемент, по элементу строки на каждую запись и каждое значение в виде дочернего элемента или атрибута. Заголовки, которые не являются допустимыми именами XML, например Order ID или 2024 total, переименовываются, и каждое переименование показывается в списке. Файл конвертируется в вашем браузере и никогда не загружается на сервер.
Как преобразовать CSV в XML
- Нажмите Открыть файл, перетащите на инструмент файл
.csv,.tsvили.txtили выберите Вставить. Если столбцы выглядят неправильно, проверьте разделитель и кодировку в разделе Параметры импорта. - Задайте Корневой элемент и Элемент строки (по умолчанию
rowsиrow) так, как ожидает принимающая система. - Выберите Значения как, обработку пустых значений, Отступы и декларацию, затем нажмите Копировать или Скачать XML.
Если программа, читающая файл, ожидает определённые имена тегов, сначала переименуйте столбцы CSV в инструменте «Переименование и перестановка столбцов CSV», чтобы автоматическое переименование не понадобилось.
Настройки структуры XML
| Дочерние элементы | Вариант по умолчанию: <row><Customer>Smith & Sons</Customer>…</row>. Сохраняет переносы строк в значениях и подходит для большинства программ импорта. |
|---|---|
| Атрибуты | По одному самозакрывающемуся элементу на строку: <row Customer="Smith & Sons" …/>. Компактно; табуляции и переносы строк в значениях записываются как 	, и , чтобы парсер их сохранил. |
| Пропускать пустые значения | По умолчанию выключено, и пустая ячейка становится пустым элементом вроде <Ship_date/>. Если включить, элемент или атрибут в этой строке пропускается. |
| Отступы | 2 пробела (по умолчанию), 4 пробела или Без отступов (сжато) — тогда весь документ записывается в одну строку. |
| Добавить XML-декларацию | По умолчанию включено: первая строка — <?xml version="1.0" encoding="UTF-8"?>. Отключите, если XML будет вставлен в другой документ. |
Имена корневого элемента и элемента строки проходят те же правила, что и заголовки; пустое или недопустимое значение заменяется на rows или row либо получает в начале подчёркивание.
Как названия столбцов становятся именами XML
- Пробелы превращаются в
_, как и любые символы, кроме букв, цифр,.,-и_:Total (EUR)→Total__EUR_,e-mail:work→e-mail_work. Двоеточия заменяются, поэтому префиксы пространств имён не появляются. - Если имя начинается с цифры,
.или-, в начало добавляется подчёркивание (2024 total→_2024_total); то же происходит с именами, которые начинаются сxmlв любом регистре, — это сочетание зарезервировано в XML (xml_ref→_xml_ref). - Если два заголовка в итоге получили одинаковое имя, ко второму добавляется
_2(a bиa_b→a_b,a_b_2). Имена XML чувствительны к регистру, поэтомуNameиnameостаются разными. - Буквы любой письменности сохраняются:
Größe,価格иЦена— допустимые имена XML. Пустой заголовок сначала становитсяColumn 7, затемColumn_7. - Каждое переименование показано под настройками в виде
old → new, а уведомление над предпросмотром сообщает их число.
Как записываются значения
- В тексте элементов экранируются
&,<и>, в атрибутах — ещё и". В остальном значения записываются в точности как в CSV:00731сохраняет нули, а типы не угадываются. - XML 1.0 запрещает большинство управляющих символов (U+0000–U+001F, кроме табуляции, перевода строки и возврата каретки), а также U+FFFE, U+FFFF и непарные суррогаты, даже в экранированном виде. Они удаляются, а число затронутых значений показывается.
- Запятые, кавычки и переносы строк в кавычках читаются по RFC 4180; перенос строки внутри дочернего элемента остаётся настоящим переносом строки.
- Результат всегда в кодировке UTF-8.
Если XML-парсер или импорт не принимает файл
- Программа импорта не находит поле. Скорее всего, его переименовали. Проверьте список под настройками и переименуйте столбец в CSV или поправьте сопоставление полей в принимающей системе.
- Парсер сообщает об ошибке кодировки. Откройте исходный файл в его настоящей кодировке (например, Windows-1251) через параметры импорта: XML будет корректным UTF-8, только если CSV был правильно раскодирован.
- Всё оказалось в одном элементе. Разделитель определён неверно; выберите запятую, точку с запятой, табуляцию или вертикальную черту в параметрах импорта.
- Нужны CDATA, пространства имён или схема. Конвертер записывает только простые элементы и атрибуты; добавьте это на следующем шаге.
Ограничения и конфиденциальность
Файлы до 25 МБ, 100 000 строк или 2 млн ячеек открываются с живым предпросмотром первых 200 строк. Бо́льшие файлы конвертируются в потоковом режиме: файл читается частями дважды (сначала чтобы измерить столбцы, затем чтобы записать результат), уведомление сообщает, что скачанный файл охватывает весь файл, а кнопки Копировать нет. Один выходной файл ограничен 4 ГБ.
Конвертация идёт в фоновом обработчике в этой вкладке, поэтому страница не зависает, а кнопка Отмена её останавливает. CSV никогда не отправляется на сервер.
Пример: выгрузка заказов с заголовками, которые нужно переименовать
Выгрузка заказов с пробелами и скобками в заголовках, амперсандом, угловыми скобками и пустой датой, преобразованная с настройками по умолчанию. Три заголовка переименованы; пустой Ship date становится <Ship_date/>.
Order ID,Customer,Total (EUR),Ship date 10071,"Smith & Sons",249.00,2025-02-03 10072,"Café <Lumière>",18.50,
<?xml version="1.0" encoding="UTF-8"?>
<rows>
<row>
<Order_ID>10071</Order_ID>
<Customer>Smith & Sons</Customer>
<Total__EUR_>249.00</Total__EUR_>
<Ship_date>2025-02-03</Ship_date>
</row>
<row>
<Order_ID>10072</Order_ID>
<Customer>Café <Lumière></Customer>
<Total__EUR_>18.50</Total__EUR_>
<Ship_date/>
</row>
</rows>Вопросы и ответы
Почему изменилось название моего столбца?
Имена элементов XML не могут содержать пробелы и большинство знаков препинания, не могут начинаться с цифры и с xml. Конвертер вносит минимальное изменение, которое даёт допустимое уникальное имя, и показывает каждое такое изменение.
Что выбрать — элементы или атрибуты?
Используйте дочерние элементы, если принимающая система не требует атрибутов. Элементы сохраняют переносы строк как есть, а в значениях атрибутов парсеры XML нормализуют пробельные символы — поэтому конвертер кодирует табуляции и переносы строк ссылками на символы.
Получают ли числа и даты типы?
Нет. В XML нет встроенных типов значений, поэтому каждое значение записывается как текст из CSV. Типы задаёт схема или программа, которая читает файл.