import UIKit
extension String
{
// MARK: 1.返回Home的完整路径名
/**
* 1.返回Home的完整路径名
*/
static func homeDir() -> String {
//获取程序的Home目录
let homeDirectory = NSHomeDirectory()
return homeDirectory
}
// MARK: 2.返回Cache的完整路径名
/**
* 2.返回缓存路径的完整路径名 Cache
*/
static func cacheDir() -> String {
//Cache目录-方法1
/*
let cachePaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.cachesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
let cachePath = cachePaths[0]
return cachePath
*/
//Cache目录-方法2
let cachePath2 = NSHomeDirectory() + "/Library/Caches"
return cachePath2
}
// MARK: 3.返回Documnets的完整路径名
/**
* 3.返回Documnets的完整路径名
*/
static func DocumnetsDir() -> String {
//获取程序的documentPaths目录
//方法1
let documentPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
let documnetPath = documentPaths[0]
//方法2
//let ducumentPath2 = NSHomeDirectory() + "/Documents"
return documnetPath
}
// MARK: 4.返回Library的完整路径名
/**
* 4.返回Library的完整路径名
这个目录下有两个子目录:Caches 和 Preferences
Library/Preferences目录,包含应用程序的偏好设置文件。不应该直接创建偏好设置文件,而是应该使用NSUserDefaults类来取得和设置应用程序的偏好。
Library/Caches目录,主要存放缓存文件,iTunes不会备份此目录,此目录下文件不会再应用退出时删除
*/
static func LibraryDir() -> String {
//获取程序的documentPaths目录
//Library目录-方法1
let libraryPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.libraryDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)
let libraryPath = libraryPaths[0]
//Library目录-方法2
//let libraryPath2 = NSHomeDirectory() + "/Library"
return libraryPath
}
// MARK: 5.返回Tmp的完整路径名
/**
* 5.返回Tmp的完整路径名
用于存放临时文件,保存应用程序再次启动过程中不需要的信息,重启后清空。
*/
static func TmpDir() -> String {
//方法1
let tmpDir = NSTemporaryDirectory()
//方法2
//let tmpDir2 = NSHomeDirectory() + "/tmp"
return tmpDir
}
}