【问题标题】:XML parsing in swift快速解析 XML
【发布时间】:2014-11-03 20:48:01
【问题描述】:

有人可以帮助我为什么下面的代码不起作用..我正在 Xcode.1 Playground 中测试它

let url:NSURL! = NSURL(fileURLWithPath:"file:///Users/sss/Documents/app.xml")

var xml = NSXMLParser(contentsOfURL: url)

xml?.parse()

【问题讨论】:

    标签: xml macos swift swift-playground


    【解决方案1】:

    游乐场是沙盒的,因此您不能只从用户文件夹中的任何位置抓取文件。以下是将该文件添加到您的 Playground 以使其可访问的方法:

    1. 在 Finder 中找到您的“.playground”文件
    2. 右键单击并选择“显示包内容”
    3. 您应该会看到“timeline.xctimeline”、“contents.xcplayground”和“section-1.swift”
    4. 创建一个名为“Resources”的新文件夹
    5. 将“app.xml”复制到新文件夹中

    现在您的文件将在沙箱中可用。您可以从包中检索它并将其加载到 NSXMLParser 中,如下所示:

    let url: NSURL! = NSBundle.mainBundle().URLForResource("app", withExtension: "xml")
    var xml = NSXMLParser(contentsOfURL: url)
    

    【讨论】:

    • 嗨,Nate Cook 非常感谢您的大力帮助。现在我明白游乐场是一个沙盒环境。但是你能告诉我为什么同样的 3 行代码不能在 Mac OS X 应用程序上运行吗?实际上我在我的 mac 应用程序中有一个要求,我必须解析用户从 NSOpenPanel 选择的 xml 文件
    • 错过了您的跟进,抱歉!如果您仍然遇到此问题,您可以发布一个新问题吗?我对NSOpenPanel 和 OS X 沙盒并不十分熟悉。
    • 如果您在进行这些更改时打开了 Playground 文件,请记住在尝试访问 Resources 文件夹中的文件之前关闭并重新打开它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-12-29
    • 1970-01-01
    • 2012-12-16
    • 2015-05-30
    • 1970-01-01
    • 2011-11-30
    • 2014-10-14
    相关资源
    最近更新 更多