沙盒(sandbox)
1.沙盒含义:每个应用程序都有一个沙盒,只能在自己沙盒中存取资源,在iOS8以后放开某些文件夹的去权限可以被外界访问
2.沙盒目录结构
(1)document
(2)library:cache,prepe
(3)tmp
3.访问沙盒目录的实现方法
//获取document目录
//参数含义:1.搜索的路径 2.主机 3.文件路径是否为全路径
let documents=NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)
print(documents[0])
//同上的作用相同
//print("11"+NSHomeDirectory())
//获取library目录
let library=NSSearchPathForDirectoriesInDomains(.libraryDirectory, .userDomainMask, true)
print("lib="+library[0])
//获取caches目录
let caches=NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true)
print("caches="+caches[0])
//获取Preferences目录
//let prefer="String".appending(library[0])
let prefer = library[0]+"/Preferences"
print("prefer="+prefer)
//获取tmp目录 获取到沙盒根目录 再拼接tmp目录
let tmp=NSTemporaryDirectory()+"/tmp"
print("tmp="+tmp)
//加载资源
let path=Bundle.main.path(forResource: "index", ofType: "html")
let html = try! String(contentsOfFile: path!)
//创建webview
let webviw=UIWebView(frame: self.view.frame)
self.view.addSubview(webviw)
webviw.loadHTMLString(html, baseURL: nil)
//同上的效果一样,都可以显示html的内容(第二种方法)
// let url = NSURL(fileURLWithPath:path!)
// let request = URLRequest(url: url as URL)
// self.view.addSubview(webviw)
// webviw.loadRequest(request)
// self.view.addSubview(webviw)