在Swift中可靠地获取iOS应用程序的"〜/ Library"路径

Ris*_*shi 11 ios swift

我想获得我可以创建文件的目录,并在我的swift app for iOS设备中将日志写入文件.我在这里阅读,/sf/answers/263413531/,使用Objective-C,有一个解决方案.我试着像这样迅速写它:

var appDir = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, true)
Run Code Online (Sandbox Code Playgroud)

但是,NSLibraryDirectory和NSUserDomainMask似乎不存在于Swift中.这样做的方法是Swift?

Kos*_*val 16

方案:

var appDir = NSSearchPathForDirectoriesInDomains(.LibraryDirectory, .UserDomainMask, true)
Run Code Online (Sandbox Code Playgroud)

说明:
您可以单击方法并查看其声明.

func NSSearchPathForDirectoriesInDomains(directory: NSSearchPathDirectory, domainMask: NSSearchPathDomainMask, expandTilde: Bool) -> [AnyObject]!
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,它需要NSSearchPathDirectoryenum
NSSearchPathDomainMaskstruct.

在swift中,当您使用枚举时,您不需要指定枚举类型,您可以使用案例值本身 .LibraryDirectory而不是NSSearchPathDirectory.LibraryDirectory