Перевод столбцов из CSV в текстовый формат
Иногда данные нужно представить в виде читаемых столбцов, не прибегая к Markdown, HTML или электронной таблице: блок кода в README, удобный для терминала отчёт, обычное текстовое письмо команде эксплуатации. Этот конвертер принимает данные в формате CSV (а также с разделителем-табуляцией, точкой с запятой или вертикальной чертой) и выдаёт столбцы, заполненные пробелами: каждая ячейка дополняется до ширины самой широкой ячейки этого столбца. Результат идеально выравнивается в моноширинном шрифте.
Как выровниваются столбцы
-
1
Вставьте данные
Подходит любой распространённый разделитель плоских файлов: запятая, табуляция, точка с запятой или вертикальная черта.
-
2
Выберите разделитель
Инструмент разбирает ячейки в кавычках с помощью `str_getcsv`, поэтому разделители внутри кавычек не нарушают структуру.
-
3
Измеряется ширина столбцов
Для каждого столбца конвертер находит самую широкую ячейку по всем строкам и запоминает её как целевую ширину.
-
4
Ячейки дополняются пробелами
Каждая ячейка дополняется пробелами справа до ширины столбца, а столбцы разделяются двумя пробелами.
Почему монопозиционная конструкция важна для данного решения
Выравнивание пробелами работает только тогда, когда все символы имеют одинаковую ширину. В пропорциональных шрифтах (Helvetica, Arial, шрифт основного текста вашего блога) символ i занимает меньше места по горизонтали, чем M, поэтому столбцы будут выглядеть неровными, даже если в каждой ячейке одинаковое число пробелов.
Где отображается правильно
- Блоки кода в Markdown (
``` ) - HTML-элементы
<pre>и<code> - Вывод терминала, файлы журналов
- Поля форматированного текста с моноширинным шрифтом (большинство IDE, тела задач в Gitea)
Где будет выглядеть сломанным
- Обычные абзацы в записях блога
- Gmail и большинство почтовых клиентов (по умолчанию используют пропорциональные шрифты)
- Сообщения в Slack за пределами обратных кавычек
- Блоки обычного текста в Notion
Альтернативы для читаемого человеком текста
| Целевой формат | Что использовать |
|---|---|
| Веб-страница | CSV в таблицу HTML |
| README на GitHub | CSV в Markdown |
| Электронная таблица | CSV в Excel |
| Данные API | CSV в JSON |
Советы
- Короткие ячейки выигрывают. Очень длинные значения заставляют столбец становиться чрезмерно широким. Сначала обрежьте длинный текст или разбейте его на строки, обработав вывод построчно.
- Выравнивание табуляцией работает иначе. Если вам нужен вывод, разделённый символом
\t, для вставки в электронную таблицу, не используйте этот инструмент, а сделайте обычный экспорт в TSV: в самой таблице выравнивание всё равно нарушится. - Широкие символы Unicode считаются иначе. Конвертер измеряет ширину с помощью
mb_strlen, который считает кодовые точки. Двойные по ширине символы CJK технически шире, чем следует из их количества, и в некоторых терминалах могут визуально смещаться.
Часто задаваемые вопросы
Инструмент дополняет ячейки пробелами. В пропорциональных шрифтах символ i занимает меньше горизонтального пространства, чем символ M; поэтому, несмотря на правильное количество пробелов, пиксели не совпадают. Отображайте текст внутри блока кода или задайте моноширинный шрифт.
Не напрямую: этот инструмент использует двойные пробелы в качестве разделителей. Чтобы получить выровненное отображение с разделителем-вертикальной чертой, выполните дополнительную обработку, заменив двойные пробелы на |, или воспользуйтесь конвертером CSV в Markdown для создания таблицы в формате GFM.
Отсутствующие клетки заполняются пробелами до достижения ширины столбца, что обеспечивает прямоугольную форму результата и его аккуратное выравнивание.
Да. Вставленный текст отправляется на наш сервер, чтобы инструмент мог выровнять столбцы. Он не сохраняется и не добавляется в ссылку на страницу.
Сопутствующие инструменты
Переводчик стандартного галактического алфавита
Переведите английский в стандартный галактический алфавит, рунический шифр из Commander Keen, стола зачарования Minecraft и Ready Player Two.
Генератор названий городов
Создавайте вымышленные названия городов, посёлков, деревень и столиц для миростроения, карт, игр, историй и тестовых данных на реальном языке или в придуманном стиле.
Переводчик Эндермана
Превратите любую фразу в речь Эндермена в стиле Minecraft: растяните гласные и переверните каждое второе слово. Скопируйте результат в чат, на таблички или в посты фанатов.
Решатель анаграмм
Введите до 10 букв и увидите каждую уникальную перестановку, с удалёнными дубликатами и списком, ограниченным 200 результатами.
Генератор тем для разговора
Создайте случайную подборку тем для начала разговора и вопросов для знакомства на свидания, командные встречи, занятия, ужины или неловкие светские беседы. Выберите, сколько вам нужно, и обновите, чтобы получить новый набор.
Генератор бегущей строки
Создавайте анимированные бегущие заголовки с настраиваемой скоростью, размером шрифта и цветами. Предпросматривайте CSS-строку marquee или панель объявлений вживую в браузере.
Инструмент доступен на других языках
- CSVからテキスト列へ変換 [JA]
- CSV till textkolumner [SV]
- CSV a Columnas de Texto [ES]
- CSV vers colonnes de texte [FR]
- คอลัมน์แปลงจาก CSV เป็นข้อความ [TH]
- CSV na kolumny tekstowe [PL]
- CSV إلى أعمدة النص [AR]
- CSV에서 텍스트 열로 변환하기 [KO]
- Van CSV naar tekstkolommen [NL]
- CSV para Colunas de Texto [PT]
- Chuyển từ bảng CSV sang các cột văn bản [VI]
- CSV ke Kolom Teks [ID]
- CSV zu Textspalten [DE]
- CSV转文本列 [ZH]
- CSV to Text Columns [EN]
- CSV in colonne di testo [IT]
- CSV'den Metin Sütunlarına [TR]