var = str创建'不明确使用appendingPathComponent'错误

时间:2017-04-22 15:17:20

标签: swift

我正在为我的班级制作一个分贝测量应用程序,我一直被一个不断出现的错误所困扰:'模糊地使用appendingPathComponent'。这是问题发生的地方:

//设置音频文件的URL

    var documents: AnyObject = NSSearchPathForDirectoriesInDomains( FileManager.SearchPathDirectory.documentDirectory,  FileManager.SearchPathDomainMask.userDomainMask, true)[0] as AnyObject
    var str = documents.appendingPathComponent("recordTest.caf")
    var url = NSURL.fileURL(withPath: str as String)

错误发生在这里:

   var str = documents.appendingPathComponent("recordTest.caf")

我似乎无法解决这个问题。

帮助, 保罗

1 个答案:

答案 0 :(得分:1)

为什么要将documents投射到AnyObject?摆脱它。

但是,由于appendingPathComponentNSStringNSURLURL的方法,因此会出现新问题。但documentsString

为什么要使用NSURL代替URL

由于您的目标是获得URL,因此请使用FileManager更直接的方法:

let docURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true)
let url = docURL.appendingPathComponent("recordTest.caf")