[Xcode 實際操做]7、文件與數據-(3)建立文本文件、屬性列表文件、圖片文件

目錄:[Swift]Xcode實際操做html

本文將演示如何建立各類類型的文件。swift

在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】數組

 1 import UIKit
 2 
 3 class ViewController: UIViewController {
 4 
 5     override func viewDidLoad() {
 6         super.viewDidLoad()
 7         // Do any additional setup after loading the view, typically from a nib.
 8         //調用方法,用來建立文本文件
 9         self.writeText()
10         //調用個方法,用來將數組對象,存儲爲一個屬性列表文件
11         self.writeArray()
12         //調用個方法,用來將字典對象,存儲爲一個屬性列表文件
13         self.writeDictionary()
14         //調用個方法,用來存儲圖片文件
15         self.writeImage()
16     }
17     
18     //建立一個方法,用來建立文本文件
19     func writeText()
20     {
21         //建立一個字符串對象,該字符串對象表示文檔目錄下的一個文本文件
22         let filePath:String = NSHomeDirectory() + "/Documents/swift.txt"
23         //再建立一個字符串對象,用來存儲將要寫入到文本的內容
24         let info = "i'm the author ,my name is Strengthten"
25         
26         //首先建立一個異常捕捉語句,用來建立一個新的文件夾
27         do
28         {
29             //使用try語句,將文字內容,寫入到指定位置的文本文件,
30             //並使用指定的編碼方式
31             try info.write(toFile: filePath, atomically: true, encoding: .utf8)
32             //在控制檯打印輸出日誌,提示文本文件建立成功
33             print("Success to write a file.\n")
34         }
35         catch
36         {
37             //在控制檯打印輸出日誌,提示文本文件建立失敗
38             print("Error to write a file.\n")
39         }
40     }
41     
42     //建立一個方法,用來將數組對象,存儲爲一個屬性列表文件
43     func writeArray()
44     {
45         //初始化一個數組對象,該數組擁有三個字符串對象。
46         //數組存儲在相同類型的數值有序表內
47         let fruits = NSArray(objects: "Apple", "Banana", "Orange")
48         //建立一個字符串對象,
49         //該字符串對象表示文檔目錄下的一個屬性列表文件
50         let fruitsPath:String = NSHomeDirectory() + "/Documents/fruitsPath.plist"
51         //將數組對象,存儲在指定位置的屬性列表文件中
52         fruits.write(toFile: fruitsPath, atomically: true)
53         //在控制檯打印輸出日誌,提示屬性列表文件建立成功
54         print("Success to write an array.\n")
55     }
56     
57     //建立一個方法,用來將字典對象,存儲爲一個屬性列表文件
58     func writeDictionary()
59     {
60         //建立一個字典對象,字典對象擁有字符串類型的鍵和值。
61         //字典對象存儲相同類型值的無序集合。
62         //能夠經過一個惟一標識符(也成爲密鑰)進行訪問和查閱
63         var dictionary : Dictionary<String, String>
64         //給字典對象添加兩個鍵值對
65         dictionary = ["Software":"Xcode","Language":"Swift"]
66         //將Swift語音中的字典對象,轉換爲舊類型的字典對象
67         let products = dictionary as NSDictionary
68         //建立一個字符串對象,該字符串對象表示文檔目錄下的一個屬性列表文件
69         let productsPath:String = NSHomeDirectory() + "/Documents/products.plist"
70         //將字典對象,存儲在指定位置的屬性列表文件中
71         products.write(toFile: productsPath, atomically: true)
72         //在控制檯打印輸出日誌,提示屬性列表文件建立成功
73         print("Success to write a dictionary.\n")
74     }
75     
76     //建立一個方法,用來存儲圖片文件
77     func writeImage()
78     {
79         //建立一個字符串對象,
80         //該字符串對象表示文檔目錄下的一個圖片文件
81         let imagePath:String = NSHomeDirectory() + "/Documents/Pic.png"
82         //在實際工做中,常常須要未來自服務器的圖片,緩存到本地。
83         //這裏選擇加載一張資源文件夾中的圖片。做爲示例圖片
84         let image = UIImage(named: "Pic1")
85         //將圖片內容進行壓縮,並轉換爲二進制內容
86         let imageData:Data = image!.pngData()!
87         //而後將二進制內容,存儲到指定位置的文件中
88         try? imageData.write(to: URL(fileURLWithPath: imagePath), options: [.atomic])
89         //在控制檯打印輸出日誌,提示圖片文件建立成功
90         print("Success to write an image.\n")
91     }
92     
93     override func didReceiveMemoryWarning() {
94         super.didReceiveMemoryWarning()
95         // Dispose of any resources that can be recreated.
96     }
97 }
相關文章
相關標籤/搜索