Как создать файл с расширением CSV?

С чего начать Документация Лицензия Требования к хостингу Установка С чего начать Описание полей CSV Импорт товаров Обновление товаров Импорт

Как создать файл с расширением CSV?

С чего начать

Документация

  • Лицензия
  • Требования к хостингу
  • Установка
  • С чего начать
  • Описание полей CSV
  • Импорт товаров
    • Обновление товаров
    • Импорт изображений
    • Импорт опций

Документация

  • Лицензия
  • Требования к хостингу
  • Установка
  • С чего начать
  • Описание полей CSV
  • Импорт товаров
    • Обновление товаров
    • Импорт изображений
    • Импорт опций

Content

  • Что такое CSV-файл
  • Пример CSV-файла
  • Как создать CSV-файл
  • Чем открывать и редактировать CSV-файл
  • Как правильно сохранить CSV-файл
  • Как проверить формат CSV-файла

Content

  • Что такое CSV-файл
  • Пример CSV-файла
  • Как создать CSV-файл
  • Чем открывать и редактировать CSV-файл
  • Как правильно сохранить CSV-файл
  • Как проверить формат CSV-файла

Что такое CSV-файл

CSV (от англ. Comma-Separated Values — значения, разделённые запятыми) — текстовый формат, предназначенный для представления табличных данных. Строка таблицы соответствует строке текста, которая содержит одно или несколько полей, разделенных запятыми (wikipedia.org).

Другими словами, это текстовый файл, в котором содержится информация в виде отдельных строк, где каждая строка это отдельная запись (например об одном товаре). Разделителем ( delimiter ) значений колонок (разделитель полей CSV) является символ запятая (,) или точка с запятой (;).

Разделитель текста – значения, содержащие зарезервированные символы (двойная кавычка, запятая, точка с запятой, новая строка) обрамляются двойными кавычками (“). Если в значении встречаются кавычки — они представляются в файле в виде двух кавычек подряд.

Наименование полей CSV – первая строка файла обычно сдержит наименование CSV полей (колонок) для идентификации этих полей (колонок).

Пример CSV-файла

Исходный текст CSV-файла, где каждая строка это одна строка таблицы:

Представление в виде втаблицы если открыть в Apache OpenOffice Calc :

_ID_ _NAME_ _MODEL_ _PRICE_
28 “HTC Touch HD” Product 1” 1750.0000
29 “Palm Treo Pro” Product 2” 112.0000
30 “Canon EOS 5D” Product 3” 113.0000

Что бы посмотреть содержимое CSV-файла его можно открыть в любом текстовом редакторе, например в Notepad++ (Как проверить формат CSV-файла) или в любом другом тестовом редакторе.

Как создать CSV-файл

Наиболее удобный и быстрый способ получить шаблон CSV-файла правильного формата – это сделать экспорт товаров через расширение CSV Price Pro import/export. Для этого в разделе Товары (eng. Products) перейдите на вкладку Экспорт (eng. Export). , выберите справа необходимые поля для экспорта и сделайте экспорт, в результате вы получите готовый для работы CSV-файл

Чем открывать и редактировать CSV-файл

Первое что нужно сделать, это скачать и установить офисный пакет Apache OpenOffice , в составе которого есть Apache OpenOffice Calc , приложение для электронных таблиц, позволяющее работать с файлами в формате CSV.

При открытии CSV-файла в приложении Apache OpenOffice Calc выберите параметры в соответствии с настройками как показано на скриншоте ниже:

  • Кодировка файла: Юникод (UTF-8)
  • Разделитель значений колонок (разделитель полей CSV): точка с запятой (;)
  • Разделитель текста и зарезервированных символов: двойная кавычка (“)
  • Поля в кавычках как текст – выбрать
  • Меню по правому клику мышки для определения типа колонки (всегда текстовое eng. Text )

Как правильно сохранить CSV-файл

Microsoft Excel умеет открывать CSV-файлы в кодировке Unicode (UTF-8) через импорт данных из файла… и пожалуй на этом можно остановиться!

Microsoft Excel не умеет сохранять CSV-файлы должным образом, при сохранении в Microsoft Excel, вы получите CSV-файл в зависимости от региональных настроек системы, обычно это разделитель табуляция или запятая и кодировка Windows-1251 (для России).

Для того что бы сохранить файл в формате CSV выберите Файл > Сохранить как .

В появившемся окне выбрать тип файла Текст CSV (.csv), установите “галочку” напротив появившегося внизу пункта Изменение настроек фильтра

Нажать кнопку Сохранить .

В открывшемся окне выберите вариант Использовать текущий формат

В открывшемся окне Экспорт в текстовый файл выберите:

  • Кодировка: Юникод (UTF-8)
  • Разделитель поля: точка с запятой (;)
  • Разделитель текста: двойная кавычка (“)
  • Текстовые значения в кавычках – выбрать

Нажать кнопку OK для сохранения.

Как проверить формат CSV-файла

CSV является простым и распространенным форматом для табличных данных, это простой текстовый файл, который cодержит текст без форматирования и имеет расширение CSV (.csv) вместо традиционного расширения TXT (.txt), такой файл может быть открыт любой программой для работы с текстом.

Вот неполный список приложений для открытия простых текстовых файлов .txt или .csv:

  • Microsoft Notepad (Windows)
  • Microsoft WordPad (Windows)
  • Helios TextPad (Windows)
  • Notepad++ (Windows)
  • Notepad2 (Windows)
  • Geany (Windows, Mac, Linux)
  • Apple TextEdit (Mac)
  • Apple Pages (iOS)
  • Leafpad (Linux)
  • gedit (Linux)
  • KWrite (Linux)

Создание и изменение CSV-файлов для импорта в Outlook

CSV-файлы (файлы данных с разделителями-запятыми) — это файлы особого типа, которые можно создавать и редактировать в Excel. В CSV-файлах данные хранятся не в столбцах, а разделенные запятыми. Текст и числа, сохраненные в CSV-файле, можно легко переносить из одной программы в другую. Например, вы можете экспортировать контакты из Google в CSV-файл, а затем импортировать их в Outlook.

Сведения о том, как импортировать список записей календаря в Outlook, см. в статье Импорт и экспорт электронной почты, контактов и календаря Outlook.

Создание CSV-файла из другой программы или службы электронной почты другого поставщика

При экспорте контактов из другой программы, например Gmail, обычно можно выбрать один из нескольких форматов. В Gmail на выбор предлагаются CSV-файл Google, CSV-файл Outlook и файлы vCard. При экспорте данных из профиля Outlook для последующего импорта в другой профиль можно выбрать CSV-файл или файл данных Outlook (PST).

Скачивание и открытие образца CSV-файла для импорта контактов в Outlook

Вы можете создать CSV-файл вручную одним из двух способов.

Создание файла Excel и его сохранение в формате CSV

Если сведения о контактах хранятся в программе, из которой их невозможно экспортировать, вы можете ввести их вручную.

Создайте новый документ в Excel.

Добавьте заголовок столбца для каждого фрагмента сведений, который вы хотите записать (например, для имени, фамилии, адреса электронной почты, номера телефона и дня рождения), а затем введите данные в соответствующие столбцы.

Когда вы закончите, файл Excel должен выглядеть примерно так:

Выберите Файл > Сохранить как.

В раскрывающемся списке выберите пункт «CSV (разделитель — запятая) (*.csv)», присвойте имя файлу и нажмите кнопку Сохранить.

Теперь вы можете использовать этот CSV-файл для импорта контактов в Outlook.

Скачивание шаблона CSV-файла

Если вы хотите начать с пустого CSV-файла, то можете скачать образец ниже.

Скачайте этот образец CSV-файла на свой компьютер. При появлении запроса нажмите кнопку Сохранить и сохраните файл на своем компьютере в формате CSV. Если сохранить файл в формате Excel (XLS или XLSM) все данные будет добавлены в один столбец.

Откройте Excel на компьютере.

В Excel выберите Файл > Открыть и перейдите к CSV-файлу, скачанному на компьютер. Чтобы найти CSV-файл, выберите Все файлы. Щелкните CSV-файл, чтобы открыть его.

При работе с этим CSV-файлом нужно помнить о нескольких вещах.

Для Outlook необходимо, чтобы в первой строке находились заголовки столбцов, поэтому не заменяйте их другими данными.
Язык заголовков столбцов должен совпадать с языком Outlook, используемым по умолчанию. Например, если в качестве языка Outlook по умолчанию настроен португальский, требуется изменить заголовки столбцов, чтобы они отображались на португальском языке.

Читайте также  Что делать если файл Excel поврежден и не открывается?

Вы можете удалить данные из строк 2–6 (например, имена, телефонные номера, адреса электронной почты и т. д).

Вводить данные во всех столбцах необязательно. Укажите только необходимые сведения.

Сохраните файл в формате CSV под другим именем. Если вы работаете с этим файлом в Excel, то при его сохранении получите несколько запросов такого типа: «Вы действительно хотите сохранить файл в формате CSV?» Всегда выбирайте ответ «Да». Если вы выберете «Нет», файл будет сохранен в собственном формате Excel (XLSX) и его нельзя будет использовать для импорта данных в Outlook.

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

Если вы импортируете данные из образца CSV-файла, вот как это будет выглядеть в Outlook в Интернете для Microsoft 365:

Изменение CSV-файла с контактами, которые нужно импортировать в Outlook

Предположим, вы хотите изменить CSV-файл, экспортированный из Outlook, а затем снова импортировать его в это приложение или другую почтовую службу. Вы можете легко сделать это с помощью Excel.

При изменении CSV-файла учитывайте перечисленные ниже моменты.

Заголовки столбцов должны оставаться в первой строке.

При сохранении файла в Excel несколько раз появятся запросы такого типа: «Вы действительно хотите сохранить файл в формате CSV?» Всегда выбирайте ответ «Да». Если вы выберете «Нет», файл будет сохранен в собственном формате Excel (XLSX) и его нельзя будет использовать для импорта в Outlook.

Проблема: все данные выводятся в первом столбце

Это могло произойти по нескольким причинам, поэтому можно попробовать несколько решений.

Если вы сохраните CSV-файл в другом формате, например XLS, XLSX или XLM, все данные будут отображаться в первом столбце. Вернитесь к исходному CSV-файлу и сохраните его в формате CSV.

Возможно, программа, в которой был создан CSV-файл, добавляет к данным дополнительные кавычки, из-за чего Excel считает их одной строкой. Предположим, например, что у вас такие данные:

a, b, c, d — Excel поместит каждую букву в отдельный столбец.

«a, b, c, d», e — Excel поместит a, b, c, d в один столбец, а e — в другой.

Чтобы проверить, не в этом ли проблема, откройте файл в Блокноте: Щелкните CSV-файл правой кнопкой мыши, выберите Открыть с помощью > Блокнот. Выполните поиск дополнительных кавычек.

Если они есть, вот как можно исправить файл:

Откройте CSV-файл в Excel. Все данные будут добавлены в столбец A без кавычек.

С помощью мастера распределения текста по столбцам разделите данные столбца A на отдельные столбцы: в строке меню выберите Данные > Текст по столбцам.

«Текст по столбцам».» loading=»lazy»>

Выберите С разделителями > Далее. Выберите запятая > Готово.

Сохраните файл в формате CVS, чтобы можно было импортировать его в Outlook.

Как создать файлы CSV, VCF, DAT для импорта контактов в почтовые клиенты и телефоны

Здравствуйте, друзья. Сегодня поговорим о таких полезных функциях, как импорт и экспорт контактов. Для чего они нужны? Человек в силу разных обстоятельств часто меняет или приобретает новые мобильные устройства, заводит дополнительные аккаунты и электронные почтовые ящики. Каждый раз заполнять адресную книгу вручную – процесс трудоёмкий, утомительный и не очень приятный. Рассматриваемые функции призваны облегчить данную задачу. Экспортировать – это вынести перечень имеющихся адресов в сторонний файл заданного формата, импортировать – это загрузить данные их созданного документа в новую адресную книгу. Ниже я вам расскажу, как создать файл csv для импорта контактов в аккаунт Google, почту от Яндекса и Outlook, а также о том, как перенести адреса в новый смартфон Андроид и телефон Nokia на платформе S30+.

Что такое csv и как создать

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

  1. Экспортировать из имеющейся адресной книги почтовой службы.
  2. Создать вручную посредством программ Microsoft Excel, OpenOffice и других.

Почтовые клиенты

Друзья, чтобы вы воочию увидели, как выглядит файл csv, сначала расскажу, как создать его для экспорта контактов из Google и Яндекс.Почты с помощью функционала самих почтовых сервисов, а также о том, как их из этого файла импортировать обратно.

Начнём с Google, для экспорта сделайте следующее:

  1. Зайдите в свой аккаунт Google (по умолчанию считаем, что он у вас есть и там имеются адреса).
  2. Нажмите значок меню приложений сверху справа, который выглядит как 9 точек в три ряда.
  3. Перейдите в «Контакты».

  1. Пометьте адреса для импорта галочками (место для постановки галочки появится при наведении на имя).
  2. С левой стороны в основном меню нажмите на «Ещё».
  3. Выберите пункт «Экспортировать».

  1. Установите настройки экспорта – используемые адреса (только выбранные или все), формат будущего файла, в данном случае Google CSV (также там можно выбрать Outlook CSV для переноса данных в одноимённую программу или vCard для создания документа на sd-карте для мобильных устройств). Подтвердите действие нажатием команды «Экспортировать».

  1. После этих действий CSV будет создан. По умолчанию он сохранится в папке «Загрузки» на вашем ПК. Внизу экрана появится оповещение о его скачивании. Нажмите на стрелочку, чтобы отобразить список возможностей, и выберите пункт «Показать в папке». После чего откроется папка, где нужный документ contacts.csv будет подсвечен системой.

Друзья, вот вы его создали. Если вы его откроете, то увидите, что верхняя строка – это название разделов – Имя, Телефон, Почта и других.

В случае с Google они будут написаны по-английски. Имена, написанные русским языком закодируются, латиницей – останутся как есть. Разделы отделены запятыми. Если какой-то столбец не имеет данных, то вместо них тоже ставится запятая.

Чтобы выполнить импорт контактов в новый аккаунт Google из созданного вами contacts.csv, проделайте следующее:

  1. Зайдите в нужный аккаунт и, пользуясь всё тем же меню приложений, перейдите в «Контакты».
  2. Нажмите на «Ещё» справа и выберите команду «Импортировать».

  1. Нажмите кнопку «Выбрать».

  1. Найдите на компьютере contacts.csv (чаще всего он так и остаётся в папке «Загрузки») и откройте.

  1. Название contacts.csv должно отобразиться рядом с синей кнопкой, нажмите команду «Импортировать».

Друзья, вот и вся нехитрая наука. По такому принципу осуществляются импорт и экспорт во все почтовые сервисы. Для закрепления материала опишу ещё, как импортировать контакты пользуясь тем же принципом в адресную строку Яндекс.Почты:

  1. Зайдите в старый электронный ящик от Яндекса, где нужно скопировать адреса и перейдите в «Контакты».

  1. Нажмите на «Ещё» и выберите сначала действие «Сохранить…».
  2. Настройте параметры экспорта, укажите язык и почтового клиента и запустите процесс создания CSV.
  3. Зайдите в новую почту, куда требуется поместить адреса и перейдите в «Контакты».
  4. Нажмите на «Ещё» и выберите действие «Загрузить».
  5. Найдите на ПК созданный ранее документ и запустите процесс импортирования.

Вручную

Друзья, теперь, когда вы представляете, что такое CSV-файл, попробуйте создать его вручную:

  1. Откройте пустой документ Microsoft Excel или OpenOffice.
  2. В первую строку поместите заголовки для столбцов сведений – имя, фамилия, телефон, почта и так далее.
  3. Заполните таблицу (необязательно писать данные в каждый имеющийся столбец, часть ячеек могут быть пустыми, названия удалять нельзя).
Читайте также  Как распаковать exe файл на маке?

  1. Сохраните документ в формате csv – файл, сохранить как, настройте расположение, задайте имя, выберите нужное расширение из списка («CSV (разделитель — запятая) (*.csv)»), нажмите «Сохранить».

Outlook

Друзья, полученный CSV-файл вы можете использовать для импорта контактов в Outlook:

  1. Откройте Outlook.
  2. В списке команд меню «Файл» выберите «Импорт и экспорт».

  1. Отметьте пункт «… из другой программы или файла».

  1. Укажите тип «Значения, разделённые запятыми».

  1. Нажмите на кнопку «Обзор» и найдите созданный ранее документ, определитесь с тем, нужны ли вам дубликаты (одинаковые адреса в CSV и уже имеющиеся в Outlook) и отметьте нужный пункт.

  1. Укажите папку для импорта «Контакты».

  1. Нажмите кнопку «Готово».

Посмотреть скопированные значения можно нажатием на значок «Люди» в нижней части окна программы. Импорт также можно сделать не из созданного собственноручно CSV, а экспортированного из почтовых клиентов. При настройке параметров экспорта необходимо установить параметр Outlook CSV (я писал об этом выше).

Телефоны

Вкратце расскажу о том, как перенести контакты из одного телефона на другой.

Андроид

На смартфонах с платформой Андроид сделать это очень просто:

  1. Зайдите в «Контакты».
  2. Раскройте содержимое меню (три точки в правом верхнем углу).
  3. Выберите пункт «Импорт/экспорт».
  4. Укажите действие «Экспорт в файл VCF».
  5. Отметьте галочками нужные имена или пункт «Выбрать все».
  6. Нажмите команду «Готово».
  7. Выдвиньте варианты мест сохранения нажатием на иконку из трёх горизонтальных полосок в верхнем левом углу и выберите sd-карту.
  8. Нажмите «Сохранить».

Результатом выполненных действий станет появление на карте памяти документа VCF. Чтобы импортировать адреса в другой смартфон, переставьте в него карту памяти, проделайте те же действия до пункта 4 предыдущего списка, укажите действие «Импорт из файла VCF», наёдите созданный ранее VCF и запустите процесс.

В телефонах Nokia на платформе S30+ импортировать контакты можно следующим образом:

  1. В контактах, настройках или опциях найдите функцию Backup (резервное копирование).
  2. Сделайте копию телефонных номеров и сохраните её на карте памяти (она будет выглядеть как backup.dat).
  3. Переставьте карту памяти в то устройство, куда требуется скопировать данные.
  4. Запустите импортирование из этого файла.

Друзья, вот и все премудрости, о которых я хотел вам сегодня поведать. Если что-то непонятно, задавайте вопросы в комментариях. До свидания.

Как создать CSV файл через таблицу Excel

Возможность создания CSV файла из таблицы Excel позволяет преобразовывать документы в нужный формат для загрузки в любые системы, например, outlook, Google Analytics, Яндекс.Метрику и многое другое.

  • Способ №1;
  • Способ №2;
  • Для чего это нужно.

Простой способ создания CSV через таблицу в Excel

В качестве примера будет использоваться таблица с данными, которую можно будет скачать ниже.

Для превращения файла в CSV потребуется нажать на кнопку «Файл» (левый-верхний угол).

Далее выбираем пункт «Сохранить как» и нажимаем на «Обзор».

Теперь выбираем нужный формат, например, стандартный CSV.

Все готово, мы получили нужный формат.

Проверив его в блокноте можно увидеть, что разделители стоят «;» (точка с запятой).

Ручной метод превращения таблицы Эксель в CSV-файл

Если требуется создать кастомный файл (с собственными разделителями, например, |). Для этого прописываем конструкцию между каждым элементом:

Далее таким образом соединяем все элементы.

Растягиваем формулу до конца документа.

Выделяем нужный столбец (новый) и правым кликом мыши по нему выводим меню, где нажимаем на «Копировать».

Создаем текстовый документ новый (блокнот), кликнув правой клавишей мыши в нужной папке.

Открываем его и вводим новое поле.

После в левом-верхнем углу кликаем на «Файл»-«Сохранить как».

Выбираем нужный тип кодировки и сохраняем документ.

Важно! Лучше всего выбирать UTF-8, что позволит работать в дальнейшем с кириллицей.

Теперь опять кликаем правой клавишей мыши на файл и нажимаем на «Переименовать».

Стираем разрешение «.txt» и прописываем вместо него «.csv». При необходимости меняем название.

Все готово, мы получили нужный формат.

Для чего это нужно?

Создание CSV-файла потребуется для:

Также можно ознакомиться с инструкцией по открытию CSV файла.

Подписывайтесь на наш канал в Яндекс.Дзен

Подписывайтесь на наши социальные сети

Вам также будет интересно

Добавить комментарий Отменить ответ

Наши социальные сети

  • CRM-системы (8)
  • Excel (73)
  • Google Ads (51)
  • Google Data Studio (25)
  • Google Optimize (2)
  • Google Search Console (18)
  • Google Аналитика (45)
  • Google Менеджер Тегов (4)
  • Google Мой бизнес (3)
  • Opencart (31)
  • SEO (77)
  • SMM (24)
  • WordPress (19)
  • Yandex DataLens (3)
  • Веб-аналитика (140)
  • Визуализация данных (13)
  • Домены (15)
  • Кейсы (6)
  • Контекстная реклама (103)
  • Локальное SEO (7)
  • Полезное (65)
  • Сайтостроение (84)
  • Таргетинг (31)
  • Формулы (16)
  • Яндекс.Вебмастер (49)
  • Яндекс.Директ (60)
  • Яндекс.Маркет (15)
  • Яндекс.Метрика (39)
  • Яндекс.Справочник (6)

© 2021
Сео Пульс — блог об интернет-маркетинге

Как создать файл CSV?

Введение

В этом пошаговом руководстве объясняется, как сохранить существующую электронную таблицу в формате CSV.

Шаг 1. Войдите в модуль Документы

Войдите на портал и нажмите на ссылку Документы.

Если вы уже на портале и работаете с ним какое-то время, то для получения доступа к модулю Документы откройте выпадающий список в левом верхнем углу страницы и выберите соответствующую опцию.

Шаг 2. Откройте электронную таблицу

Откроется папка Мои документы.

Найдите электронную таблицу и нажмите на значок справа от нужной таблицы или используйте опцию Редактировать из контекстного меню. Файл откроется в новой вкладке.

Чтобы открыть файл, сохраненный на жестком диске, сначала загрузите его в модуль Документы, нажав на кнопку Загрузить в левом верхнем углу страницы.

Вы можете также создать новую электронную таблицу прямо на портале, нажав на кнопку Создать в левом верхнем углу и выбрав из выпадающего списка опцию Таблица.

Шаг 3. Отредактируйте электронную таблицу

Для корректного импорта данных необходимо соблюдать несколько общих правил:

    первая строка должна быть строкой заголовка, содержащей названия столбцов/полей;

Для добавления заголовка выделите мышью первую строку таблицы. Щелкните по ней правой кнопкой мыши и выберите следующие опции: Добавить >> Строку. Над выделенной строкой будет вставлена пустая строка. Введите нужные названия колонок/полей.

обязательными полями являются: Имя и Фамилия для импорта персон, Название компании для импорта компаний;

Для добавления в таблицу нового столбца (например, чтобы разделить Имя и Фамилию если они указаны в одном и том же столбце, или чтобы добавить какие-то еще сведения), выделите столбец, перед которым требуется добавить новый. Щелкните по нему правой кнопкой мыши и выберите следующие опции: Добавить >> Столбец. Новый столбец будет вставлен слева от выбранного. Введите нужные значения.

  • одной строке соответствует запись одного контакта.

Шаг 4. Сохраните таблицу как файл CSV

CSV (англ. Comma Separated Values — значения, разделенные запятыми) представляет собой простой формат файлов, который широко поддерживается различными приложениями, например, текстовыми редакторами. Такие файлы содержат табличные данные в текстовой форме.

Чтобы сохранить таблицу как файл .csv, перейдите на вкладку Файл верхней панели инструментов, выберите опцию Скачать как. на левой боковой панели и выберите формат CSV.

Откроется окно Выбрать параметры CSV. Выберите Unicode (UTF-8) как тип Кодировки и Запятую как Разделитель для разделения значений в файле. В противном случае файл вообще не удастся загрузить в CRM или данные будут отображаться некорректно.

Читайте также  Как найти файл Visual Studio?

Нажмите кнопку OK, чтобы начать сохранение файла.

По умолчанию созданный файл CSV будет сохранен в папке Загрузки на жестком диске.

Точно так же можно преобразовать в формат CSV любую нужную вам таблицу.

CSV файлы на PHP – создание и чтение

CSV очень удобный формат с точки зрения генерации, поскольку он очень просто устроен. В этой заметке разберемся как устроены файлы с расширением .csv , как их создавать и разбирать (парсить) в PHP. Делается это очень просто.

Ниже приведены простые PHP функции для создания и парсинга csv файлов. Никаких библиотек — для CSV это лишнее!

Формат CSV

Чтобы понимать суть вещей, нужно разобраться в спецификации CSV файлов, как устроен формат. Давайте коротко.

CSV (Comma-Separated Values — значения, разделённые запятыми) — текстовый формат, предназначенный для представления табличных данных.

Каждая строка файла — это одна строка таблицы.

Разделителем значений колонок является символ: , (запятая). Для русского языка используется ; (точка с запятой), потому что в русском запятая используется в дробных числах.

Значения, содержащие зарезервированные символы: » , ; rn или n или r (двойная кавычка, запятая, точка с запятой, новая строка) обрамляются двойными кавычками » .

Если в значении встречаются двойные кавычки » , то они должны выглядеть как двое кавычек подряд «» .

  • Строка файла может разделяться символами: rn или n .

Это все что нужно знать, чтобы работать с CSV!

Пример для рус. языка:

Пример для англ. языка:

Wiki-справка

Большинство программ под CSV понимают более общий формат DSV (delimiter-separated values — значения разделённые разделителем), допускающий использование иных символов в качестве разделителя. В частности, в русской и других локалях запятая по умолчанию зарезервирована под десятичный разделитель. Поэтому как разделитель используется точка с запятой или табуляция (формат TSV).

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

Создание CSV файла в PHP

Для создания CSV файла, достаточно создать текстовый файл, используя в нужных местах необходимые разделители столбцов и строк.

Важным моментом, является кодировка файла. Для корректного отображения кириллицы следует использовать кодировку cp1251 (windows-1251).

Разделитель колонок

Для русского языка символом-разделителем является ; (точка с запятой). Для англ. , (запятая).

Строки содержащие спец символы: » , ; rn или n или r должны быть в двойных кавычках «строка» .

Двойные кавычки внутри строки, нужно «очистить» поставив перед кавычкой еще одну такую же кавычку: строка «csv» превратиться в «строка «»csv»»» . Обрамление в кавычки нужно, чтобы можно было внутри значений колонок использовать разделители ; , , и не переживать что что-то сломается при чтении файла.

Разделитель строк

Для разделения строк в csv файлах можно использовать rn (возврат каретки и перенос строки, CR LF). В этом случае, если нужен перенос строки внутри значения колонки, то там используется просто n .

Также, для разделения строки, может использоваться просто n (перенос строки, LF). В этом случае, перенос строки внутри значения колонки должен обозначаться как r (возврат каретки CR).

Функция для создания CSV файла

меню

Чтение CSV файла в PHP

Когда нужно получить данные из CSV файла, т.е. разобрать его и получить данные в переменную, можно использовать встороенную в PHP функцию str_getcsv() .

Есть еще функция fgetcsv() , но она оказалась капризной и не всегда работает как нужно (может перепутать переносы строк).

Вариант на базе функции str_getcsv() :

Конвертация .lsx , .xlsx файла в .csv

Чтобы перевести Excel файл в CSV, нужно открыть его в Excel и сохранить в формате .csv :

Если такую конвертацию нужно сделать программно, смотрите в сторону онлайн конвертеров с API или готовых библиотек.

Сталкивались с такой задачей и знаете более универсальный способ? Прошу поделиться в комментариях.

Я столкнулся и потратил несколько часов перебирая всякий не универсальный «мусор» из гугла — то одно не работает, то другое, то библиотеку нужно ставить «хитро-мудрую». Так и появилась эта заметка.

  • Создаем новые поля для комментариев WordPress
  • Передача переменных по ссылке в apply_filters(), do_actions()
  • Kama_Post_Meta_Box — создаем метаполя для записей

Тема, конечно, интересная. Только этот код в реальных условиях работать не будет.

Что с ним не так?

1) Разделитель поля может быть любой. Например, », ‘|’ или ещё что похуже.
2) Символ ограничителя поля может быть как двойная, так и одинарная ковычка.
3) Неплохо бы использовать unset в коде. Память на сервере всё-таки не резиновая. Одно дело загрузка файла с пару сотен строк кода, а другое если их пару десятков миллионов.

1) Ты параметр $col_delimiter не увидел похоже, суй туда какой угодно разделитель!

2) Для текущего кода (обоих) это учитывается: в первом создается строка с двойной кавычкой и только. Во втором строка парсится PHP функцией str_getcsv() которая обе кавычки понимает.

3) В каком месте там unset по твоему поможет хорошо избавится от потерь памяти? Если у тебя файл выходит за пределы памяти, что редкость с текущими параметрами серверов, то это пожалуй экстра случай и подход уже нужен будет принципиально другой. Файл читать или записывать нужно будет частями или построчно, а не так целиком. По аналогии ты в ВП запихай 50 000 рубрик и все приехали, нужно будет костыли вставлять для нормальной работы. Но ВП почему-то самая популярная CMS, как же так? Я не писал код на все случаи жизни, код покрывает 80% случаев, остальное уже требует отдельного подхода, а этот код можно взять за основу.

Этот код в реальных условиях у меня работает! Может там и есть баги, но я их не встречал.

П.С. просмотрел второй код, добавил unset() маловероятно что много толку от этого, но лишним не будет.

Не «суй туда какой угодно разделитель», а все возможные разделители для csv файлов. Ты бы ещё менеджеру предложил указывать разделитель для файла, который он загружает

«с текущими параметрами серверов». Поверь, кривым кодом можно положить сервер даже с очень хорошими характеристиками. Я обычно беру за правило, если переменная больше не будет использоваться она должна умереть (или обнулиться). Когда поработаешь с хайлоудом, то начинаешь понимать цену памяти)

И вообще, если пишешь рабочую программу, нужно это делать хорошо, а не в стиле «мой первый скрипт»!

Демогогия это, ты реальную проблему покажи, так я её не вижу.

П.С. я люблю стиль «мой первый скрипт». Этот сайт как раз в таком стиле написан, пока все устраивает

Важным моментом, является кодировка файла. Для корректного отображения кириллицы следует использовать кодировку cp1251 (windows-1251).

Борис Аладышкин/ автор статьи

Приветствую! Я являюсь руководителем данного проекта и занимаюсь его наполнением. Здесь я стараюсь собирать и публиковать максимально полный и интересный контент на темы связанные с современными технологиями и программным обеспечением. Уверен вы найдете для себя немало полезной информации. С уважением, Борис Аладышкин.

Понравилась статья? Поделиться с друзьями:
Itsovet61.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: