Swift告诉我我的文件不存在,不幸的是我自己找不到该目录。我是否错误地使用了资源方法的URL,或者我是否只需要找到删除可选括号的方法?当我直接引用这个对象时,它可以工作,但我需要找到一种方法来创建我的队友也可以使用的路径。
override func setUp()
{
super.setUp()
let bundleURL = NSBundle.mainBundle().URLForResource("meetingexample", withExtension: "ics")
let eventsFile = NSURL(fileURLWithPath: ("\(bundleURL)"))
//let eventsFile = NSURL(fileURLWithPath: docFolderURL.URLByAppendingPathComponent("/meetingexample.ics"))
content = try! String(contentsOfURL: eventsFile, encoding: NSUTF8StringEncoding)
}
打印bundleURL:
可选(文件:/用户/ GB112922 /库/开发商/ CoreSimulator /设备/ EF6A2594-6B31-4E38-B46D-2F3AAAF25210 /数据/容器/捆绑/应用/ 35E04003-072F-476E- 957E-98C70B792539 / CallIn.app / meetingexample.ics)`
答案 0 :(得分:1)
您有两个问题:
"\(bundleURL)"
正在NSURL
额外文字中包含Optional(...)
的值。URLForResource
已经为您提供了NSURL
。无需从中创建另一个NSURL
。只需使用bundleURL
即可。不需要eventsFile
变量。
override func setUp()
{
super.setUp()
let bundleURL = NSBundle.mainBundle().URLForResource("meetingexample", withExtension: "ics")
content = try! String(contentsOfURL: bundleURL, encoding: NSUTF8StringEncoding)
}