【问题标题】:How do you initialize NSXMLDocument with an XML string in Swift?如何在 Swift 中使用 XML 字符串初始化 NSXMLDocument?
【发布时间】:2014-06-22 19:20:53
【问题描述】:

我正在尝试从 xml 字符串中获取值,但是对于 Swift 来说,我不知道如何初始化 NSXMLDocument 对象。我正在尝试:

var xmlString:String = "<?xml version=\"1.0\"><results><item1><name>Something</name><price>10.99</price></item1></results>"
var xml:NSXMLDocument = NSXMLDocument(xmlString)

我收到错误“找不到接受提供的参数的 'init' 的重载”。我尝试将字符串转换为 NSData 但我最终得到了同样的错误:

var nsData:NSData = xmlString.dataUsingEncoding(NSUTF8StringEncoding)
var xml:NSXMLDocument = NSXMLDocument(nsData)

【问题讨论】:

    标签: swift macos


    【解决方案1】:

    NSXMLDocument 不包含初始化程序,而仅将字符串作为参数。不过有initWithXMLString:options:error:,应该可以解决你的问题。比如:

    let xmlString = "<?xml version=\"1.0\"><results><item1><name>Something</name><price>10.99</price></item1></results>"
    var error: NSError?
    let xml = NSXMLDocument(XMLString: xmlString, options: 0, error: &error)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-30
      • 2016-07-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多