加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

F#XML解析

发布时间:2020-12-16 08:03:19 所属栏目:百科 来源:网络整理
导读:这个c#代码可能不是最有效的,但得到了我想要完成的。 如何在F#代码中完成同样的事情? string xml = " EmailList " + " Emailtest@email.com/Email " + " Emailtest2@email.com/Email " + " /EmailList "; XmlDocument xdoc = new XmlDocument(); XmlNodeLi
这个c#代码可能不是最有效的,但得到了我想要完成的。

如何在F#代码中完成同样的事情?

string xml = " <EmailList> " +
               "      <Email>test@email.com</Email> " +
               "      <Email>test2@email.com</Email> " +
               " </EmailList> ";

    XmlDocument xdoc = new XmlDocument();
    XmlNodeList nodeList;
    String emailList = string.Empty;
    xdoc.LoadXml(xml);
    nodeList = xdoc.SelectNodes("//EmailList");
    foreach (XmlNode item in nodeList)
    {
        foreach (XmlNode email in item)
        {
             emailList +=  email.InnerText.ToString() +  Environment.NewLine ;
        }               
    }
let doc = new XmlDocument() in
    doc.LoadXml xml;
    doc.SelectNodes "/EmailList/Email/text()"
        |> Seq.cast<XmlNode>
        |> Seq.map (fun node -> node.Value)
        |> String.concat Environment.NewLine

如果你真的想要最后一个换行符,你可以添加它在地图和String.concat与空字符串。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读