Когда и Почему XML предпочтительный для CSV? [закрытый]

Можно использовать GetTempFileName для создания временного файла файл , затем удалить и воссоздать этот файл как каталог вместо этого.

Примечание: ссылка не работала, скопировать/вставить от: http://msdn.microsoft.com/en-us/library/aa364991 (По сравнению с 85) .aspx

32
задан 2 revs, 2 users 100% 30 November 2009 в 19:02
поделиться

17 ответов

Некоторые сильные стороны:

  • Вы можете проверить XML-данные по XSD
  • Вы можете легко предоставить контракты (как XSD) другим сторонам, которые должны либо создавать / использовать XML-данные, не описывая их буквально
  • Вы можете иметь один ко многим отношениям в многоуровневом представлении данных XML
  • XML, возможно, более читабелен, чем CSV
  • XML изначально поддерживается инфраструктурой .net

И это лишь некоторые из моих мыслей.

63
ответ дан 27 November 2019 в 19:41
поделиться

И я также предпочитаю его, потому что он гораздо более читабельный.

-2
ответ дан 27 November 2019 в 19:41
поделиться
  1. There are existing parsers and emitters for it in every language and database
  2. They deal with encoding for me
  3. They deal with escaping for me

That's all that matters to me.

Sure, there's a semi-standard way to do escaping in CSV (i.e., "the way Excel does it"), and it's not exactly hard to write yourself, but it does take some time. And then you've got to implicitly agree on a character encoding out-of-band. But then, because it's so simple, people try to write it themselves, and invariably screw up either #2 or #3.

JSON also meets #2 and #3 and is getting close to satisfying #1. It's also arguably simpler, at least for non-document files. Not surprisingly, I find myself using it more and more, internally and externally.

0
ответ дан 27 November 2019 в 19:41
поделиться

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

Прежде всего, хотя это является стандартным.

0
ответ дан 27 November 2019 в 19:41
поделиться

И еще одно слово для XML: X в XML означает E xtensible (я знаю, не совсем мнемоника: -П). Это означает, что с помощью механизма пространства имен XML вы можете объединить любые два языка XML, которые вам нравятся, и объединить их в одном и том же документе. Учитывая, что существует только один «язык» CSV (не считая мириады стилей разделителей), XML может справиться с довольно большой сложностью, причем модульным способом.

Однако это преимущество CSV:

0
ответ дан 27 November 2019 в 19:41
поделиться

Вы можете легко просматривать XML-данные, даже если у вас есть сложные данные.

Отметьте это ссылки:

1
ответ дан 27 November 2019 в 19:41
поделиться

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

1
ответ дан 27 November 2019 в 19:41
поделиться

I would say use XML (and or JSON) because someday you or someone (with a short temper and a large gun collection) may have to go find an error in the CSV data.

So yes, I'm saying readability, don't forget to think of the other guy! He may be thinking about you.

2
ответ дан 27 November 2019 в 19:41
поделиться

CSV является более легким, если вы хотите что-то перемещать, поскольку он обычно в 2 раза меньше, чем XML

XML является стандартным и не будет затронут другими версиями CSV ОС

2
ответ дан 27 November 2019 в 19:41
поделиться

В дополнение к другим ответам XML позволяет указать, в каком наборе символов находится документ.

3
ответ дан 27 November 2019 в 19:41
поделиться

У меня недостаточно репутации, чтобы прокомментировать соответствующий ответ, но кто-то предложил сжать XML как способ добиться паритета размеров с форматами CSV. Хотя это правда, сжатие XML иногда может вас укусить. Если вы переносите XML-данные от точки к точке, и это не удается, хорошо иметь возможность прочитать XML и выяснить, что пошло не так. Если XML сжат и передача не удалась, иногда невозможно распаковать его и изучить содержимое. Другими словами, сжатие XML сводит на нет его преимущество в удобочитаемости.

2
ответ дан 27 November 2019 в 19:41
поделиться

Конечно, это иногда модно и достойно шумихи. Все зависит от вашего приложения. Я предпочитаю файлы конфигурации в XML, потому что их легко разбирать. Принимая во внимание, что я использую файлы CSV для DataGridView или дампов баз данных.

Этот Daily WTF: XML против CSV Выбор очевиден поможет вам принять решение;)

4
ответ дан 27 November 2019 в 19:41
поделиться

Вы можете иметь гораздо более сложную иерархию и т. Д. И структуру с XML по сравнению с CSV. Он предлагает гораздо большую гибкость.

7
ответ дан 27 November 2019 в 19:41
поделиться

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

XML имеет то преимущество, что он имеет данные с самоописанием (теги) и иерархия, что дает вам гораздо больше гибкости в способе хранения данных.

12
ответ дан 27 November 2019 в 19:41
поделиться

.csv файлы хороши, когда ваши данные строго табличны и вы знаете их структуру. Как только вы начинаете устанавливать отношения между разными уровнями данных, xml начинает работать лучше, потому что отношения можно сделать очевидными (даже без схем) просто путем вложения.

21
ответ дан 27 November 2019 в 19:41
поделиться

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

SSMS любит обрезать csv для развлечения.

0
ответ дан 27 November 2019 в 19:41
поделиться

I have found of the greatest advantages of XML to be the parsing functionality and the strict validation that comes out-of-the-box with most XML libraries. The insistence on well-formedness and easy-to-understand error message (xyz not closed in line x, column y) are a real help compared to hunting broken values, or unknown behaviour, because of an error in the CSV file.

3
ответ дан 27 November 2019 в 19:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: