我有一个XML文件,我在F#中打开这样的文件:
let Bookmarks(xmlFile:string) = let xml = XDocument.Load(xmlFile)
一旦我有了XDocument,我需要使用LINQ to XML导航它并提取所有特定的标签.我的部分解决方案是:
let xname (tag:string) = XName.Get(tag) let tagUrl (tag:XElement) = let attribute = tag.Attribute(xname "href") attribute.Value let Bookmarks(xmlFile:string) = let xml = XDocument.Load(xmlFile) xml.Elements <| xname "A" |> Seq.map(tagUrl)
如何从XML文件中提取特定标记?
#light open System open System.Xml.Linq let xname s = XName.Get(s) let bookmarks (xmlFile : string) = let xd = XDocument.Load xmlFile xd.Descendants <| xname "bookmark"
这将找到"书签"的所有后代元素.如果您只想要直接后代,请使用Elements方法(xd.Root.Elements <| xname",无论如何").