无法为没有参数的类型“URL”调用初始化程序 - Swift 3

时间:2016-12-14 10:04:48

标签: ios swift3

收到错误:

  

无法为没有参数的“URL”类型调用初始化程序

以下是代码 -

 var databasePath = URL()

我已全局声明此变量。也试过

 var databasePath: URL!
 if let url = NSURL().absoluteURL { //error 1- Consecutive declarations on a line must be separated by ';'
 databasePath = url //error2 - Variable used within its own initial value
 }

如果将上面的代码写为var databasePath = URL()的替换,则会收到2个以上的错误。

我是Swift的初学者。请让我知道解决方案。

3 个答案:

答案 0 :(得分:2)

URL初始值设定项必须有参数。

基本上有两种类型:

  • 文件系统中的URL

    let databaseURL = URL(fileURLWithPath:"/path/to/file.ext")
    
  • 具有明确方案的网址(例如httpftp等)

    let databaseURL = URL(string:"http://myserver/path/to/file.ext")!
    

    如果URL保证有效,则可以将其解包(!),否则使用光学绑定(if let

答案 1 :(得分:1)

以这种方式声明网址

var url:URL = NSURL()作为URL

答案 2 :(得分:0)

Swift- 5种简便方法

var fileDownloadedURL = URL(string: "")