如何使用Swift 3 Playground读取Resources目录中的文本文件?

Ron*_*nto 5 swift-playground swift3

我有一个我在Swift playground的Resources目录中创建的文本文件.我试图在运行时期间获取Playground中"资源"的目录位置,但它返回一些甚至不存在的其他位置.

import PlaygroundSupport
let dirLog = PlaygroundSupport.playgroundSharedDataDirectory
Run Code Online (Sandbox Code Playgroud)

dirLog显示为:

file:///Users/ronaldo/Documents/Shared%20Playground%20Data/
Run Code Online (Sandbox Code Playgroud)

PlaygroundSupport似乎没有获取此目录位置所需的方法.我在另一个SE问题中看到了一些提及,他们使用NSBundle类来获取参考资料中的文件.但我找不到在Swift 3中使用的任何NSBundle对象.

aya*_*aio 9

每个Playground都有自己的Resources文件夹,隐藏实际路径.

在Swift 3中,您可以使用以下命令获取Resources文件夹中的文件Bundle:

let url = Bundle.main.url(forResource: "file", withExtension: "txt")
Run Code Online (Sandbox Code Playgroud)

此Bundle URL的路径包含当前Resources文件夹的路径.


您还可以避免使用Bundle文件Resources夹并将文件拖放到Playground本身,从而创建文件文字.

例如,let url =将文件从Resources文件夹中输入到=符号后面的Playground中.