public static void printRecursive(XmlNode node)
{
printIndent();
Console.Write("+--");
Console.Write("<"+node.Name+" "+node+" >\n");
nodes++;
if(node.ElementType==XmlElementType.XML_ELEMENT_NODE)
{
XmlElement el=(XmlElement)node;
indent+=4;
foreach(XmlAttr ar in el.Attributes)
{
printIndent();
Console.Write("+--");
Console.WriteLine(ar.Name+" => "+ar.Value);
}
indent-=4;
}
if(node.GetFirstChild()!=null)
{
indent+=2;
printRecursive(node.GetFirstChild());
indent-=2;
}
if(node.GetNextSibling()!=null)
{
printRecursive(node.GetNextSibling());
}
}