我有一个用这个算法编写的 XML 文档:
public XMLmethod(){
string[] nodes = { "node1", "node2", "node3" }; //etc etc
XmlTextWriter writer= new XmlTextWriter("file.xml", Encoding.UTF8);
writer.WriteStartDocument();
writer.WriteStartElement("root");
foreach (string node in nodes){
writer.WriteStartElement(s);
writer.WriteEndElement();
XMLmethod()}
writer.WriteEndElement();
writer.WriteEndDocument();
}
以上为简化版。但是,我希望能够在将它们打印到 xml 之前过滤掉一些节点。
例如:
<root>
<node1>
<node2> </node2>
<node3> </node3>
</node1>
<root>
说我想过滤 <node1> </node1>
所以它看起来像这样
<root>
<node2></node2>
<node3></node3>
</root>
所以它仍然想打印孩子<node2></node2>
和<node3></node3>
我考虑过使用 if 语句,例如:
foreach (string node in nodes){
if(node == "node1"){}
else{
writer.WriteStartElement(node);
writer.WriteEndElement();
XMLmethod()}
}
这成功地不打印<node1>/<node1>
,但它也阻止它打印子节点。知道我该怎么做吗?