C # XmlDocument для небольших файлов XML - вес / производительность - PullRequest
1 голос
/ 29 ноября 2010

Меня интересует смысл использования класса XmlDocument для обработки небольших XML-файлов. Если во время загрузки XML-файла XmlDocument создает полный набор объектно-ориентированной структуры для всех XML-элементов и их взаимосвязей, теоретически для небольших XML-файлов наблюдается небольшое снижение производительности и потребления ресурсов, и в то же время и простое управление данными.

Я прочитал много статей об обработке файлов XML - обычные люди предлагают использовать облегченные решения, такие как XmlTextReader вместо XmlDocument для быстрого чтения вперед - даже для небольших файлов. Я не прав или XmlDocument не так уж и плох?

Ответы [ 2 ]

2 голосов
/ 29 ноября 2010

Вам придется измерить его, но даже для небольшого файла основным фактором будет ввод / вывод.

А как вы хотите использовать файл? Это гораздо важнее.

Я бы никогда не подумал о Xml (Text) Reader для маленьких файлов. Единственное, что можно было бы оптимизировать, - это использование памяти.


В ответ на комментарий:

Для 100 КБ, просто используйте XDocument или более старый XmlDocument

Вы можете получить все свои узлы с помощью XElement.Descendants ("TAG")

  var xmlData = XDocument.Load(filename);
  var tags = xmlData.Descendants("TAG");
  foreach(var tag in tags) ...
2 голосов
/ 29 ноября 2010

На мой взгляд, это личное предпочтение. Лично я использовал Xmldocument поверх XmlTextReader, так как мне легче работать с ним. Теперь я перешел на использование LINQ to Xml, так как он использует XDocument, который позволяет легче читать узлы и элементы

прочитайте это 5-минутное введение в LINQ to Xml, поскольку его намного проще использовать и читать http://www.hookedonlinq.com/LINQtoXML5MinuteOverview.ashx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...