в какой программе можно создать файл в формате csv
Редактируем CSV-файлы, чтобы не сломать данные
Продукты HFLabs в промышленных объемах обрабатывают данные: адреса, ФИО, реквизиты компаний и еще вагон всего. Естественно, тестировщики ежедневно с этими данными имеют дело: обновляют тест-кейсы, изучают результаты очистки. Часто заказчики дают «живую» базу, чтобы тестировщик настроил сервис под нее.
Первое, чему мы учим новых QA — сохранять данные в первозданном виде. Все по заветам: «Не навреди». В статье я расскажу, как аккуратно работать с CSV-файлами в Excel и Open Office. Советы помогут ничего не испортить, сохранить информацию после редактирования и в целом чувствовать себя увереннее.
Материал базовый, профессионалы совершенно точно заскучают.
Что такое CSV-файлы
Формат CSV используют, чтобы хранить таблицы в текстовых файлах. Данные очень часто упаковывают именно в таблицы, поэтому CSV-файлы очень популярны.
CSV-файл состоит из строк с данными и разделителей, которые обозначают границы столбцов
CSV расшифровывается как comma-separated values — «значения, разделенные запятыми». Но пусть название вас не обманет: разделителями столбцов в CSV-файле могут служить и точки с запятой, и знаки табуляции. Это все равно будет CSV-файл.
У CSV куча плюсов перед тем же форматом Excel: текстовые файлы просты как пуговица, открываются быстро, читаются на любом устройстве и в любой среде без дополнительных инструментов.
Из-за своих преимуществ CSV — сверхпопулярный формат обмена данными, хотя ему уже лет 40. CSV используют прикладные промышленные программы, в него выгружают данные из баз.
Одна беда — текстового редактора для работы с CSV мало. Еще ничего, если таблица простая: в первом поле ID одной длины, во втором дата одного формата, а в третьем какой-нибудь адрес. Но когда поля разной длины и их больше трех, начинаются мучения.
Следить за разделителями и столбцами — глаза сломаешь
Еще хуже с анализом данных — попробуй «Блокнотом» хотя бы сложить все числа в столбце. Я уж не говорю о красивых графиках.
Поэтому CSV-файлы анализируют и редактируют в Excel и аналогах: Open Office, LibreOffice и прочих.
Ветеранам, которые все же дочитали: ребята, мы знаем об анализе непосредственно в БД c помощью SQL, знаем о Tableau и Talend Open Studio. Это статья для начинающих, а на базовом уровне и небольшом объеме данных Excel с аналогами хватает.
Как Excel портит данные: из классики
Все бы ничего, но Excel, едва открыв CSV-файл, начинает свои лукавые выкрутасы. Он без спроса меняет данные так, что те приходят в негодность. Причем делает это совершенно незаметно. Из-за этого в свое время мы схватили ворох проблем.
Большинство казусов связано с тем, что программа без спроса преобразует строки с набором цифр в числа.
Округляет. Например, в исходной ячейке два телефона хранятся через запятую без пробелов: «5235834,5235835». Что сделает Excel? Лихо превратит номера́ в одно число и округлит до двух цифр после запятой: «5235834,52». Так мы потеряем второй телефон.
Приводит к экспоненциальной форме. Excel заботливо преобразует «123456789012345» в число «1,2E+15». Исходное значение потеряем напрочь.
Проблема актуальна для длинных, символов по пятнадцать, цифровых строк. Например, КЛАДР-кодов (это такой государственный идентификатор адресного объекта: го́рода, у́лицы, до́ма).
Удаляет лидирующие плюсы. Excel считает, что плюс в начале строки с цифрами — совершенно лишний символ. Мол, и так ясно, что число положительное, коль перед ним не стоит минус. Поэтому лидирующий плюс в номере «+74955235834» будет отброшен за ненадобностью — получится «74955235834». (В реальности номер пострадает еще сильнее, но для наглядности обойдусь плюсом).
Потеря плюса критична, например, если данные пойдут в стороннюю систему, а та при импорте жестко проверяет формат.
Разбивает по три цифры. Цифровую строку длиннее трех символов Excel, добрая душа, аккуратно разберет. Например, «8 495 5235834» превратит в «84 955 235 834».
Форматирование важно как минимум для телефонных номеров: пробелы отделяют коды страны и города от остального номера и друг от друга. Excel запросто нарушает правильное членение телефона.
Удаляет лидирующие нули. Строку «00523446» Excel превратит в «523446».
А в ИНН, например, первые две цифры — это код региона. Для Республики Алтай он начинается с нуля — «04». Без нуля смысл номера исказится, а проверку формата ИНН вообще не пройдет.
Меняет даты под локальные настройки. Excel с удовольствием исправит номер дома «1/2» на «01.фев». Потому что Windows подсказал, что в таком виде вам удобнее считывать даты.
Побеждаем порчу данных правильным импортом
Если серьезно, в бедах виноват не Excel целиком, а неочевидный способ импорта данных в программу.
По умолчанию Excel применяет к данным в загруженном CSV-файле тип «General» — общий. Из-за него программа распознает цифровые строки как числа. Такой порядок можно победить, используя встроенный инструмент импорта.
Запускаю встроенный в Excel механизм импорта. В меню это «Data → Get External Data → From Text».
Выбираю CSV-файл с данными, открывается диалог. В диалоге кликаю на тип файла Delimited (с разделителями). Кодировка — та, что в файле, обычно определяется автоматом. Если первая строка файла — шапка, отмечаю «My Data Has Headers».
Перехожу ко второму шагу диалога. Выбираю разделитель полей (обычно это точка с запятой — semicolon). Отключаю «Treat consecutive delimiters as one», а «Text qualifier» выставляю в «
На третьем шаге выбираю формат полей, ради него все и затевалось. Для всех столбцов выставляю тип «Text». Кстати, если кликнуть на первую колонку, зажать шифт и кликнуть на последнюю, выделятся сразу все столбцы. Удобно.
Дальше Excel спросит, куда вставлять данные из CSV — можно просто нажать «OK», и данные появятся в открытом листе.
Перед импортом придется создать в Excel новый workbook
Но! Если я планирую добавлять данные в CSV через Excel, придется сделать еще кое-что.
После импорта нужно принудительно привести все-все ячейки на листе к формату «Text». Иначе новые поля приобретут все тот же тип «General».
После этого, если повезет, Excel оставит исходные данные в покое. Но это не самая твердая гарантия, поэтому мы после сохранения обязательно проверяем файл через текстовый просмотрщик.
Альтернатива: Open Office Calc
Для работы с CSV-файлами я использую именно Calc. Он не то чтобы совсем не считает цифровые данные строками, но хотя бы не применяет к ним переформатирование в соответствии с региональными настройками Windows. Да и импорт попроще.
Конечно, понадобится пакет Open Office (OO). При установке он предложит переназначить на себя файлы MS Office. Не рекомендую: хоть OO достаточно функционален, он не до конца понимает хитрое микрософтовское форматирование документов.
А вот назначить OO программой по умолчанию для CSV-файлов — вполне разумно. Сделать это можно после установки пакета.
Итак, запускаем импорт данных из CSV. После двойного клика на файле Open Office показывает диалог.
Заметьте, в OO не нужно создавать новый воркбук и принудительно запускать импорт, все само
Помимо Calc у нас в HFLabs популярен libreOffice, особенно под «Линуксом». И то, и другое для CSV применяют активнее, чем Excel.
Белая пустошь, раскинувшаяся посередине, в оригинальном CSV-файле богато заполнена данными
Поэтому после сохранения я еще раз открываю файл и убеждаюсь, что данные на месте.
После пересохранения обязательно еще раз проверяю, что все данные на месте и нет лишних пустых строк.
Если интересно работать с данными, посмотрите на наши вакансии. HFLabs почти всегда нужны аналитики, тестировщики, инженеры по внедрению, разработчики. Данными обеспечим так, что мало не покажется 🙂
Как создать файлы CSV, VCF, DAT для импорта контактов в почтовые клиенты и телефоны
Здравствуйте, друзья. Сегодня поговорим о таких полезных функциях, как импорт и экспорт контактов. Для чего они нужны? Человек в силу разных обстоятельств часто меняет или приобретает новые мобильные устройства, заводит дополнительные аккаунты и электронные почтовые ящики. Каждый раз заполнять адресную книгу вручную – процесс трудоёмкий, утомительный и не очень приятный. Рассматриваемые функции призваны облегчить данную задачу. Экспортировать – это вынести перечень имеющихся адресов в сторонний файл заданного формата, импортировать – это загрузить данные их созданного документа в новую адресную книгу. Ниже я вам расскажу, как создать файл csv для импорта контактов в аккаунт Google, почту от Яндекса и Outlook, а также о том, как перенести адреса в новый смартфон Андроид и телефон Nokia на платформе S30+.
Что такое csv и как создать
CSV – это тот самый документ заданного формата, который используется для переноса адресов между почтовыми службами. Он представляет собой своеобразную табличку — хранилище данных, разделённых запятыми. Создать его можно двумя способами:
Почтовые клиенты
Друзья, чтобы вы воочию увидели, как выглядит файл csv, сначала расскажу, как создать его для экспорта контактов из Google и Яндекс.Почты с помощью функционала самих почтовых сервисов, а также о том, как их из этого файла импортировать обратно.
Начнём с Google, для экспорта сделайте следующее:
Друзья, вот вы его создали. Если вы его откроете, то увидите, что верхняя строка – это название разделов – Имя, Телефон, Почта и других.
В случае с Google они будут написаны по-английски. Имена, написанные русским языком закодируются, латиницей – останутся как есть. Разделы отделены запятыми. Если какой-то столбец не имеет данных, то вместо них тоже ставится запятая.
Чтобы выполнить импорт контактов в новый аккаунт Google из созданного вами contacts.csv, проделайте следующее:
Друзья, вот и вся нехитрая наука. По такому принципу осуществляются импорт и экспорт во все почтовые сервисы. Для закрепления материала опишу ещё, как импортировать контакты пользуясь тем же принципом в адресную строку Яндекс.Почты:
Вручную
Друзья, теперь, когда вы представляете, что такое CSV-файл, попробуйте создать его вручную:
Outlook
Друзья, полученный CSV-файл вы можете использовать для импорта контактов в Outlook:
Посмотреть скопированные значения можно нажатием на значок «Люди» в нижней части окна программы. Импорт также можно сделать не из созданного собственноручно CSV, а экспортированного из почтовых клиентов. При настройке параметров экспорта необходимо установить параметр Outlook CSV (я писал об этом выше).
Телефоны
Вкратце расскажу о том, как перенести контакты из одного телефона на другой.
Андроид
На смартфонах с платформой Андроид сделать это очень просто:
Результатом выполненных действий станет появление на карте памяти документа VCF. Чтобы импортировать адреса в другой смартфон, переставьте в него карту памяти, проделайте те же действия до пункта 4 предыдущего списка, укажите действие «Импорт из файла VCF», наёдите созданный ранее VCF и запустите процесс.
В телефонах Nokia на платформе S30+ импортировать контакты можно следующим образом:
Друзья, вот и все премудрости, о которых я хотел вам сегодня поведать. Если что-то непонятно, задавайте вопросы в комментариях. До свидания.