目錄:[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 //調用方法,遍歷文件夾 10 self.listFolder() 11 //調用方法,用來複制文件 12 self.copyFile() 13 //調用方法,用來移動一個文件 14 self.moveFile() 15 //調用方法,用來刪除一個文件 16 self.removeFile() 17 //調用方法,用來刪除一個文件夾下的全部內容 18 self.removeFolder() 19 //調用方法,遍歷文件夾 20 self.listFolder() 21 } 22 23 //建立一個方法,用來複制文件 24 func copyFile() 25 { 26 //得到文件管理對象。 27 //文件管理對象的主要功能包括: 28 //1.讀取文件中的數據 29 //2.向一個文件中寫入數據 30 //3.刪除或複製文件 31 //4.移動文件 32 //5.比較兩個文件的內容 33 //6.檢測文件的存在性 34 let fileManager = FileManager.default 35 //建立一個字符串對象, 36 //該字符串對象表示文檔目錄下的一個文本文件。 37 let sourceUrl = NSHomeDirectory() + "/Documents/swift.txt" 38 //再建立俺一個字符串對象, 39 //表示文件被複制後的目標位置 40 let targetUrl = NSHomeDirectory() + "/Documents/swift_bak.txt" 41 42 //建立一個異常捕捉語句,用於複製一個文件 43 do 44 { 45 //使用try語句,將文本文件複製到目標位置 46 try fileManager.copyItem(atPath: sourceUrl, toPath: targetUrl) 47 //在控制檯打印輸出日誌,提示文本文件複製成功 48 print("Success to copy file.") 49 } 50 catch 51 { 52 print("Failed to copy file.") 53 } 54 } 55 56 //建立一個方法,用來移動一個文件 57 func moveFile() 58 { 59 //得到文件管理對象 60 let fileManager = FileManager.default 61 //建立一個字符串對象, 62 //該字符串對象表示文檔目錄下的一個屬性列表文件。 63 let sourceUrl = NSHomeDirectory() + "/Documents/products.plist" 64 //再建立一個字符串對象,表示文件被移動後的目標位置 65 let targetUrl = NSHomeDirectory() + "/Documents/backUp" 66 67 //建立一個異常捕捉語句,用於移動一個文件 68 do 69 { 70 //使用try語句,將屬性列表文件移動到目標位置 71 try fileManager.moveItem(atPath: sourceUrl, toPath: targetUrl) 72 //在控制檯打印輸出日誌,提示屬性列表文件移動成功 73 print("Success to move file.") 74 } 75 catch 76 { 77 print("Failed to move file.") 78 } 79 } 80 81 //建立一個方法,用來刪除一個文件 82 func removeFile() 83 { 84 //得到文件管理對象 85 let fileManager = FileManager.default 86 //建立一個字符串對象, 87 //該字符串對象表示文檔目錄下的一個圖片文件。 88 let sourceUrl = NSHomeDirectory() + "/Documents/Pic.png" 89 90 //建立一個異常捕捉語句,用於移除一個文件 91 do 92 { 93 //使用try語句,刪除指定位置的圖片 94 try fileManager.removeItem(atPath: sourceUrl) 95 //在控制檯打印輸出日誌,提示文件刪除成功 96 print("Success to remove file.") 97 } 98 catch 99 { 100 print("Failed to remove file.") 101 } 102 } 103 104 //建立一個方法,用來刪除一個文件夾下的全部內容 105 func removeFolder() 106 { 107 //得到文件管理對象 108 let fileManager = FileManager.default 109 //建立一個字符串對象, 110 //該字符串對象表示文檔目錄下的文件夾。 111 let folder = NSHomeDirectory() + "/Documents/backUp" 112 //得到該目錄下的全部子文件夾 113 let files:[String]? = fileManager.subpaths(atPath: folder) 114 //建立一個循環語句,用來遍歷全部子目錄 115 for file in files! 116 { 117 //建立一個異常捕捉語句,用於刪除內容 118 do 119 { 120 //使用try語句,刪除指定位置的內容 121 try fileManager.removeItem(atPath: folder + "/\(file)") 122 //在控制檯打印輸出日誌,提示內容刪除成功 123 print("Success to remove folder.") 124 } 125 catch 126 { 127 print("Failed to remove folder.") 128 } 129 } 130 131 } 132 133 //建立一個方法,用來檢查和遍歷, 134 //在複製、移動、刪除等操做以後的文件夾 135 func listFolder() 136 { 137 //得到文件管理對象 138 let manager = FileManager.default 139 //建立一個字符串對象, 140 //該字符串對象表示文檔目錄 141 let url = NSHomeDirectory() + "/Documents/" 142 143 //得到文檔目錄下的全部內容,以及子文件夾下的內容, 144 //並存儲在一個數組對象中 145 let contents = manager.enumerator(atPath: url) 146 //而後在控制檯打印輸出數組內容 147 print("contents:\(String(describing: contents?.allObjects))") 148 } 149 150 override func didReceiveMemoryWarning() { 151 super.didReceiveMemoryWarning() 152 // Dispose of any resources that can be recreated. 153 } 154 }