ios文件操作之目录操作-NSFileManager

//
//  ViewController.swift
//  NSFileManager_Test
//
//  Created by power on 16/6/1.
//  Copyright © 2016年 power. All rights reserved.
//

import UIKit

class ViewController: UIViewController
{
    //延迟加载,每次调用时,返回NSSearchPathForDirectoriesInDomains数组的第一个值,也就是目录位置
    lazy var documentsPath:String = {
        let paths =NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask,true)
        return paths.first!
    }()
    
    
    overridefunc viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        directoryTest()            //目录测试函数
        fileTest()                 //文件测试函数
    }

    func directoryTest()
    {
        let path ="\(documentsPath)/Data"
        print(path)
        
        if !directoryExistsAtPath(path)
        {
            createDirectoryAtPath(path)
            
        }
//        deleteDirectoryAtPath(path)
//        directoryExistsAtPath(path)
    }

    //判断目录是否存在,返回布尔值
    func directoryExistsAtPath(path:String) ->Bool {
        let fileManager =NSFileManager.defaultManager()
        let result = fileManager.fileExistsAtPath(path)
        
        //系统判断目录或者文件是否存在,都用的是fileExistsAtPath()方法
        
        if result
        {
            print("dirctory exists...")
        }
        else
        {
            print("dirctory not exists...")
        }
        return result
    }
    
    
    //创建目录,参数为穿件目录
    func createDirectoryAtPath(path:String)
    {
        let fileManager =NSFileManager.defaultManager()
        do
        {
            try fileManager.createDirectoryAtPath(path, withIntermediateDirectories:false, attributes: nil)
        }catch         //如果创建失败,则打印一行报告
        {
            print("create directory failed")
        }
    }
    
    //删除目录方法,参数为传入路径
    func deleteDirectoryAtPath(path:String)
    {
        let fileManager =NSFileManager.defaultManager()
        do
        {
            try fileManager.removeItemAtPath(path)
        }
        catch
        {
            print("delete directory failed")
        }
    }
    
    func fileTest()
    {
        let path ="\(documentsPath)/data.txt"
        print(path)
        
        if !fileExistsAtPath(path)
        {
            createFileAtPath(path)
            fileExistsAtPath(path)
        }
    }
    
    func fileExistsAtPath(path:String) ->Bool
    {
        let fileManager =NSFileManager.defaultManager()
        let result = fileManager.fileExistsAtPath(path)
        
        if result
        {
            print("file exists")
        }
        else
        {
        print("file net exists")
        }
        return result
    }
    
    func createFileAtPath(path:String)
    {
        let fileManager =NSFileManager.defaultManager()
        fileManager.createFileAtPath(path, contents:nil, attributes: nil)
    }
    
    func deleteFileAtPath(path:String)
    {
        let fileManager =NSFileManager.defaultManager()
        do
        {
            try fileManager.removeItemAtPath(path)
        }
        catch
        {
            print("delete File failed")
        }
    }


    overridefunc didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }


}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值