swift4--复制删除和移动文件

//复制移动和删除文件
import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
//       调用创建的方法
        self.copyFile()
        self.moveFile()
        self.removeFile()
        self.removeFolder()
        self.listFolder()
    }

//    首先创建一个方法,用来复制一个文件
    func copyFile() {
//        首先获得文件管理对象,
        let fileManager = FileManager.default
//        创建一个字符串对象,表示文档目录下的一个文本文件
        let souceUrl = NSHomeDirectory() + "/Documents/swift.txt"
//        再创建一个字符串对象,表示文件被复制后的目标位置
        let targetUrl = NSHomeDirectory() + "/Douments/swift_bak.txt"
        do{
//            复制文件
            try fileManager.copyItem(atPath: souceUrl, toPath: targetUrl)
            print("Success to copy file.")
        }catch{
            print("Failed")
        }
    }
//    接着创建一个方法,用来移动一个文件
    func moveFile(){
//        获得文件管理对象,
        let fileManager = FileManager.default
//        创建一个字符串对象,表示文档目录下一个属性列表文件
        let sourceUrl = NSHomeDirectory() + "/Documents/prodouts.plist"
//        再创建一个字符串对象,表示文件被移动到目标位置
        let targetUrl = NSHomeDirectory() + "/Documents/backUp"
        do{
            try fileManager.moveItem(atPath: sourceUrl, toPath: targetUrl)
            print("Succsee to move file.")
        }catch{
            print("Failed to move file.")
        }
    }
//    创建一个方法,用来删除一个文件
    func removeFile(){
//        获得文件管理对象
        let fileManger = FileManager.default
//        创建一个字符串对象,表示文档目录下的一个图片
        let sourceUrl = NSHomeDirectory() + "/Documents/Pic.png"
        do{
//            删除指定位置的图片
            print("Success to remove file.")
            try fileManger.removeItem(atPath: sourceUrl)
        }catch{
            print("Failed!")
        }
        
    }
//    创建一个方法,用来删除一个文件夹下所有的内容
    func removeFolder(){
//        获得文件对象管理器
        let fileManger = FileManager.default
//        创建一个字符串对象,表示文档目录下的一个文件夹
        let folder = NSHomeDirectory() + "/Documents/bak"
//        然后获得所有该目录下的子文件夹
        let files:[AnyObject]? = fileManger.subpaths(atPath: folder)! as [AnyObject]
//        创建一个循环语句,用来遍历所有子目录
        for file in files!
        {
            do{
//                删除指定位置的内容
                try fileManger.removeItem(atPath: folder + "/\(file)")
                print("Success to remove folder")
            }catch{
                print("Failder!")
            }
        }
        
    }
//    该方法用来检查操作后的文件夹
    func listFolder(){
//        获得文件管理对象、
        let manger = FileManager.default
//        创建一个字符串对象,该字符串对象表示文档目录
        let url = NSHomeDirectory() + "/Documents/"
        
//        获得文档目录下所有的内容,以及子文件夹下的内容,在控制台打印所有的数组内容
        let contents = manger.enumerator(atPath: url)
        print("contents:\(String(describing: contents?.allObjects))")
        
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}

猜你喜欢

转载自blog.csdn.net/weixin_41735943/article/details/81227729