Що таке CSV?
CSV (Comma-Separated Values) — це текстовий формат файлів для зберігання та обміну табличними даними. У цьому форматі значення розділяються комами (або іншими роздільниками, наприклад, крапкою з комою або табуляцією), а кожен рядок відповідає одному запису.
Основні характеристики CSV:
- Простий текстовий формат – дані зберігаються у вигляді звичайного тексту, що робить формат зручним для перегляду та редагування.
- Роздільник значень – зазвичай це кома
,
, але можуть бути й інші символи (;
,\t
тощо). - Немає стандартної схеми – CSV не містить метаданих про типи даних, тому всі значення розглядаються як текст.
- Широка підтримка – CSV можна відкривати у текстових редакторах, електронних таблицях (Microsoft Excel, Google Sheets) та обробляти програмними мовами (Python, JavaScript тощо).
Приклад CSV-файлу
Файл data.csv
з інформацією про користувачів може виглядати так:
Ім'я,Вік,Місто
Олександр,25,Київ
Марія,30,Львів
Іван,22,Одеса
Де:
- Перша строка – заголовок (назви колонок).
- Значення розділені комами.
- Кожен рядок представляє окремий запис.
Якщо в даних є коми, їх беруть у лапки:
Ім'я,Вік,Місто
"Олександр, Сергійович",25,Київ
Марія,30,"Львів, Україна"
Як працювати з CSV?
🔹 Відкриття CSV у Microsoft Excel / Google Sheets
- Відкрийте Excel або Google Sheets.
- Перейдіть у Файл → Відкрити і виберіть CSV-файл.
- Excel автоматично розпізнає роздільник (якщо ні, можна налаштувати вручну).
- Далі можна редагувати дані як у звичайній таблиці.
Робота з CSV у програмуванні
🔹 Використання в Python
Python має вбудований модуль csv
для роботи з CSV-файлами.
📌 Зчитування CSV у Python:
import csv
with open("data.csv", newline='', encoding='utf-8') as file:
reader = csv.reader(file)
for row in reader:
print(row)
📌 Запис даних у CSV:
import csv
data = [
["Ім'я", "Вік", "Місто"],
["Олександр", 25, "Київ"],
["Марія", 30, "Львів"]
]
with open("new_data.csv", "w", newline='', encoding='utf-8') as file:
writer = csv.writer(file)
writer.writerows(data)
🔹 Використання в JavaScript (Node.js)
Для роботи з CSV у JavaScript можна використовувати бібліотеку papaparse
або fs
.
📌 Читання CSV у Node.js:
const fs = require('fs');
fs.readFile('data.csv', 'utf8', (err, data) => {
if (err) {
console.error(err);
return;
}
console.log(data.split("\n").map(row => row.split(",")));
});
Переваги та недоліки CSV
✅ Переваги:
- Простий та легкий формат.
- Може відкриватися у текстових редакторах та таблицях.
- Підтримується майже всіма програмами та мовами програмування.
❌ Недоліки:
- Відсутність строгого формату (всі значення – текст).
- Проблеми з комами у значеннях.
- Немає підтримки складних структур (наприклад, вкладених списків).
Висновок
CSV — це зручний та універсальний формат для обміну табличними даними, який широко використовується у програмуванні, базах даних, бізнес-аналітиці та автоматизації. Він простий у використанні та має широке застосування, хоча і має певні обмеження.