lilv2
2015-06-02 09:23
采纳率: 100%
浏览 1.4k
已采纳

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条回答 默认 最新

  • blownewbee 2015-06-02 09:29
    已采纳

    什么叫叠加?
    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; 
            }
    
        }
                这样?
    
    点赞 评论
  • bdmh 2015-06-02 09:29

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

    点赞 评论
  • Cassiel_Huang 2015-06-02 12:23

    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());//显示子节点点文本  
            }
    
        }
                这样?
    
    点赞 评论

相关推荐 更多相似问题