поэтому у меня есть массивный файл XML, который содержит структуру, похожую на этот:XML Синтаксического - Удаление узлов и сохраняя общую структуру
<Item ItemId=";ResTVersion" ItemType="0" PsrId="245" Leaf="false">
<Disp Icon="Str" Expand="true" Disp="true" LocTbl="false" Order="13352" />
<Modified By="sachink" DateTime="2008-12-16T19:02:35Z" />
<PsrProps>
<Str Name="Kii" Val="yyyyyyyyyyyyy" />
</PsrProps>
<Item ItemId=";ResTFileVersion" ItemType="0;ResT" PsrId="245" InstFlg="true" Leaf="true">
<Str Cat="Text" UsrLk="true">
<Val><![CDATA[ttttttttt]]></Val>
<Tgt Cat="Text" Orig="New">
<Val><![CDATA[ttttttttt]]></Val>
</Tgt>
</Str>
<Disp Icon="Str" Order="13353" />
<Modified By="sachink" DateTime="2008-12-16T19:02:35Z" />
<Cmts>
<Cmt Name="Dev"><![CDATA[{Locked}]]></Cmt>
</Cmts>
</Item>
<Item ItemId=";ResTLanguageTag" ItemType="0;ResT" PsrId="245" InstFlg="true" Leaf="true">
<Str Cat="Text" UsrLk="true">
<Val><![CDATA[en-US]]></Val>
<Tgt Cat="Text" Orig="New">
<Val><![CDATA[en-US]]></Val>
</Tgt>
</Str>
<Disp Icon="Str" Order="13354" />
<Modified By="sachink" DateTime="2008-12-16T19:02:35Z" />
<Cmts>
<Cmt Name="Dev"><![CDATA[=.ABVUDHUIDSHFUIDSHFUISHDFUIDSH iusdhfUIHAs]]></Cmt>
</Cmts>
</Item>
</Item>
У меня есть несколько записей записи, и я хочу, чтобы создать новый XML, что уважает старую структуру. Я использую этот код для извлечения нужных узлов, а затем создаю новый XML.
XmlNodeList nodes = originalXML.SelectNodes("//*[contains(@ItemId,'" + id + "')]");
Так что я хочу удалить некоторые узлы, но у меня есть только те из них, которые я хочу сохранить. Проблема заключается в том, как сохранить внешнюю структуру xml, когда вы используете функцию selectnodes, чтобы получить внутренние узлы?
Спасибо!
Почему у вас просто нет шаблона XML без элементов и динамически добавлять элементы в документ по мере необходимости? Имеет ли это смысл ? –