Специфікація формату CSV визначена в RFC 4180 . Ця специфікація була опублікована, оскільки
не існує офіційної специфікації, яка дозволяє проводити широкий спектр інтерпретацій файлів CSV
На жаль, з 2005 року (дата публікації RFC) нічого не змінилося. У нас все ще існує широкий вибір. Загальний підхід, визначений у RFC 4180, полягає у включенні полів, що містять символи, такі як коми у лапках, однак ця рекомендація не завжди відповідає іншому програмному забезпеченню.
Проблема полягає в тому, що в різних європейських локалях символ кома виступає в якості десяткової крапки, тому ви пишете 0,005
замість 0.005
. Однак в інших випадках коми використовуються замість пробілів для сигналізації знакових груп, наприклад 4,000,000.00
(див. Тут ). В обох випадках використання коми може призвести до помилок при читанні даних з CSV-файлів, оскільки ваше програмне забезпечення насправді не знає, чи 0,005, 0,1
є два чи чотири різні числа (див. Приклад тут ).
І останнє, але не менш важливе значення, якщо ви зберігаєте текст у вашому файлі даних, то коси в тексті набагато частіше зустрічаються, ніж, наприклад, крапки з комою, тому якщо ваш текст не укладений у лапки, такі дані також можна легко читати з помилками .
Ніщо не робить коми кращими або гіршими роздільниками поля , що стосується файлів CSV відповідно до рекомендацій як RFC 4180, які захищають від описаних вище проблем. Однак якщо є ризик використання спрощеного формату CSV, який не закриває поля лапками, або рекомендація може бути використана непослідовно, тоді інші роздільники (напр. Крапка з комою) здаються більш безпечним підходом.