teste de aula
{
raiz de string estática privada;
public static void showXML(caminho da string)
{
XmlDocument xd = new XmlDocument();
xd.Load(caminho);
XmlNodeList xnl = xd.DocumentElement.ChildNodes;
root = xd.FirstChild.NextSibling.Name;//记录根节点
Console.Write(root+"n");
foreach (XmlNode xn em xnl)
{
//Console.Write(xn.Attributes["nome"].Value.ToString()+"n");
Filho XmlNode = xn.FirstChild;
NodeOperate(filho);
}
}
public static void NodeOperate(XmlNode xn1)
{
if (xn1.HasChildNodes == verdadeiro)
{
Console.Write(xn1.Nome + "n");
Console.Write("n");
XmlNode childNode = xn1.FirstChild;
NodeOperate(filhoNode);
}
outro
{
Console.Write(xn1.Nome + "n");
Console.Write(xn1.InnerText);
Console.Write("n");
if (xn1.NextSibling! = Nulo)
{
NodeOperate(xn1.NextSibling);
}
outro
{
sinalizador interno = 0;
while (xn1.NextSibling == nulo)
{
if (xn1.Name == root)//检查是否到了根节点,如果不检查会出现节点的引用错误
{
bandeira = 1;
quebrar;
}
outro
{
xn1 = xn1.ParentNode;
}
}
se (sinalizador == 0)
{
NodeOperate(xn1.NextSibling);
}
senão se(sinalizador==1)
{
Console.Write("Fim");
}
}
}
}
}
público estático vazio Principal()
{
test.showXML(@"C:Documents and SettingsSKYMeus DocumentosVisual Studio 2005ProjectsProject1Project1system.xml");
Console.Leitura();
}