C#怎么把显示子节文本值叠加
    public static  string  ShowXml()
    {
        xmlDoc = new XmlDocument();
        xmlDoc.Load("F:\\6.4迭代一\\Virtual Exchange\\TradeCenterUI\\MailSendOut.xml"); //加载xml文件
        XmlNode xn = xmlDoc.SelectSingleNode("bookshop");

        XmlNodeList xnl = xn.ChildNodes;

        foreach (XmlNode xnf in xnl)
        {
            XmlElement xe = (XmlElement)xnf;
            Console.WriteLine(xe.GetAttribute("genre"));//显示属性值 
            Console.WriteLine(xe.GetAttribute("ISBN"));

            XmlNodeList xnf1 = xe.ChildNodes;
            foreach (XmlNode xn2 in xnf1)
            {
                Console.WriteLine(xn2.InnerText);//显示子节点点文本  
            }

        }
        return xnl.ToString();

        
    }

3个回答

什么叫叠加?
string s = "";
foreach (XmlNode xnf in xnl)
{
XmlElement xe = (XmlElement)xnf;
Console.WriteLine(xe.GetAttribute("genre"));//显示属性值
Console.WriteLine(xe.GetAttribute("ISBN"));

        XmlNodeList xnf1 = xe.ChildNodes;
        foreach (XmlNode xn2 in xnf1)
        {
           s += xn2.InnerText; 
        }

    }
            这样?

如果是字符串连接,可以用 + 号,推荐用stringbuilder

foreach (XmlNode xnf in xnl)
{
XmlElement xe = (XmlElement)xnf;
Console.WriteLine(xe.GetAttribute("genre"));//显示属性值
Console.WriteLine(xe.GetAttribute("ISBN"));

        XmlNodeList xnf1 = xe.ChildNodes;
                    StringBuilder nodeText=new StringBuilder();
        foreach (XmlNode xn2 in xnf1)
        {
                       nodeText.Append(xn2.InnerText+",");
            Console.WriteLine(nodeText.ToString());//显示子节点点文本  
        }

    }
            这样?
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!