Xcode9学习笔记69 - 创建各种类型的文件(文本、数组、字典、图片)
override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. //在视图加载完成的方法中,分别调用4个文件写入方法 self.writeText() self.writeArray() self.writeImage() self.writeDictionary() } func writeText() {//首先创建一个方法,用来创建一个文本文件 let filePath:String = NSHomeDirectory() + "/Documents/swift.txt"//创建一个字符串对象,表示文档目录下的一个文本文件 let info = "如果你说你在下午四点来,从三点钟开始,我就开始感觉很快乐,时间越临近,我就越来越感到快乐。到了四点钟的时候,我就会坐立不安,我发现了幸福的价值,但是如果你随便什么时候来,我就不知道在什么时候准备好迎接你的心情了" do {//创建一个异常捕捉语句用来创建一个新的文件夹 try info.write(toFile: filePath, atomically: true, encoding: .utf8)//使用try语句将文本内容写入指定的文件 print("Success to create a file.\n") } catch { print("Error to write a file.\n") } } func writeArray() {//创建一个方法,用来将数组对象,存储为一个属性列表文件 let fruits = NSArray(objects: "Apple", "Banana", "Orange")//初始化一个数组对象,数组储存在相同类型的数值有序表内 //创建一个字符串对象表示文档目录下的一个属性列表文件 let fruitePath:String = NSHomeDirectory() + "/Documents/fruitsPath.plist" fruits.write(toFile: fruitePath, atomically: true)//将数组对象存储在指定位置的属性列表文件中 print("Success to write an array.\n") } func writeDictionary() {//创建一个方法,用来将字典对象,存储为一个属性列表文件 var dictionary : Dictionary<String, String>//创建一个数组对象,该数组对象拥有两个字符串对象 dictionary = ["Software":"Xcode", "Language":"Swift"]//创建另一个数组对象,该数组对象也拥有两个字符串对象 //使用前面创建的两个数组,初始化一个字典对象。字典对象存储相同类型值的无序集合,可以通过一个唯一标识符(也成为密钥)进行访问和查阅 let products = dictionary as NSDictionary //创建一个字符串对象,该字符串对象表示文档目录下的一个属性列表文件 let productsPath:String = NSHomeDirectory() + "/Documents/products.plist" products.write(toFile: productsPath, atomically: true)//将字典对象存储在指定位置的属性列表文件中 print("Success to create dictionary.\n") } func writeImage() {//创建一个方法用来储存图片文件 let imagePath:String = NSHomeDirectory() + "/Documents/Pic.png"//创建一个字符串对象,表示文档目录下的一个图片文件 let image = UIImage(named: "Pic1")//在实际工作中,经常需要将来自服务器的图片缓存到本地 let imageData:Data = UIImagePNGRepresentation(image!)!//将图片对象进行压缩,并转换成二进制内容 try? imageData.write(to: URL(fileURLWithPath: imagePath), options: [.atomic])//将二进制内容存储到指定的文件中 print("Success to write an image.\n") }