2012-02-08 7 views
1

У меня есть огромный XML-файл 9 Гб, где мне нужно, чтобы добавить узел:Как добавить узел в XML в C#?

XML-файл, как:

<ABC> 
    <DEF> 
    <GHI> 
     <AB>"ab"</AB> 
     <CD>"cd"</CD> 
     <EF>"ef"</EF> --NEED TO ADD 
    </GHI> 
    </DEF> 
</ABC> 
<PQR> 
</PQR> 

Зафиксировано, что нужно слишком добавить только ABC метки. XDocument будет нуждаться в таком количестве ресурсов любая помощь с благодарностью

+0

возможный дубликат [Добавить новый узел в дереве xml] (http://stackoverflow.com/questions/2527380/add-new-node-to-xml-tree) –

+2

@sani - Нет, ограничение 9GB означает, что это не очень-то дубликат этого вопрос. Ответ там неприменим. –

ответ

2

Посмотрите here на то, как поток в документе XML, чтобы избежать загрузки его в один присест, а затем просто соответствовать на элемент (ы) вы желаете и добавить то, что вам нужно в.

+0

Спасибо, друг ... :) – AJ01

+0

Интересно, я не знал о 'XStreamingElement'. – svick

0

Использование XmlReader/XmlWriter, XmlTextReader/XmlTextWriter (см. here). Это быстро, вперед только читатель/писатели, которые не загружают весь xml за один раз, поэтому должны справляться с большими файлами.

Смежные вопросы