//深度遍历 public void DOMDepthFirst(XmlNode CurrentNode)
{
if(CurrentNode.HasChildNodes)
{
XmlNode node=CurrentNode.FirstChildNode;
while (node!=null)
{
DOMDepthFirst(node);
node=node.NextSibling;
}
}
}
//广度遍历
public void DOMBreadthFirst(XmlNode root)
{
Queue queue=new Queue();
queue.Enqueue(root);
XmlNode CurrentNode;
try
{
while (true)
{
CurrentNode=(XmlNode)queue.Dequeue;
if(CurrentNode.HasChildNodes)
{
foreach (XmlNode eachchild in CurrentNode.ChildNodee)
queue.Enqueue(eachchild);
}
}
}
catch (InvalidOperationException e)
{
Console.writeLine("Done!");
}
}