[OC Foundation框架 - 23] 文件管理
NSFileManager*manager = [NSFileManagerdefaultManager];//单例模式 // 1.获取文件属性
NSString *path = @"/Users/hellovoidworld/desktop/oc/test20141121.txt";
NSFileManager *manager = [NSFileManagerdefaultManager]; // 单例模式
NSDictionary *attrDic = [manager attributesOfItemAtPath:path error:nil];
NSLog(@"attrDic: %@", attrDic); // 2.获得目录下的文件与子文件目录列表
NSString *dirPath = @"/Users/hellovoidworld/desktop/oc"; // 只能获取到第一级目录的文件和文件夹(名字)
NSArray *subDirArr = [manager contentsOfDirectoryAtPath:dirPath error:nil];
NSLog(@"subDirArr: %@", subDirArr); // 包含所有文件、子目录(名字)
NSArray *subPath = [manager subpathsAtPath:dirPath];
NSLog(@"subPath: %@", subPath); // 3.管理目录
// 创建目录
[manager createDirectoryAtPath:@"/Users/hellovoidworld/desktop/oc/newFolder"withIntermediateDirectories:NOattributes:nilerror:nil];
//withIntermediateDirectories 参数表示要不要创建不存在的所有目录,NO表示只能创建一级目录 // 移动目录
[manager moveItemAtPath:@"/Users/hellovoidworld/desktop/oc/newFolder/existedFolder"toPath:@"/Users/hellovoidworld/desktop/oc/newFolder/movedFolder"error:&error];
// existedFolder会被剪切变成movedFolder,移动到指定位置 // 删除目录
[manager removeItemAtPath:@"/Users/hellovoidworld/desktop/oc/newFolder/deletingFolder"error:nil]; // 拷贝文件
[manager copyItemAtPath:@"/Users/hellovoidworld/desktop/oc/newFolder/copyingFolder"toPath:@"/Users/hellovoidworld/desktop/oc/newFolder/copiedFolder"error:nil];
NSFileManager *fileManager = [NSFileManager defaultManager]; // // 1.获得文件
NSString *path = @"/Users/hellovoidworld/desktop/oc/M2.jpg";
NSData *data = [NSData dataWithContentsOfFile:path]; // 提取数据
NSLog(@"%ld", data.length); NSString *path2 = @"/Users/hellovoidworld/desktop/oc/M2Copy.jpg";
[fileManager createFileAtPath:path2 contents:data attributes:nil]; // 写入数据 // 2.移动文件,相当于剪切操作
NSString *fromPath = @"/Users/hellovoidworld/desktop/oc/M2Copy.jpg";
NSString *toPath = @"/Users/hellovoidworld/desktop/oc/newFolder/M2.jpg";
[fileManager moveItemAtPath:fromPath toPath:toPath error:nil]; // 3.删除文件
[fileManager removeItemAtPath:@"/Users/hellovoidworld/desktop/oc/newFolder/M2.jpg" error:nil];
// NSData是一个不可变长度的Data类型,可以一次性加载文件内容
NSData *data = [NSData dataWithContentsOfFile:@"/Users/hellovoidworld/desktop/oc/newFolder/test.txt"];
NSLog(@"data length = %ld", data.length); // 利用NSData写入文件数据
[data writeToFile:@"/Users/hellovoidworld/desktop/oc/newFolder/test2.txt" atomically:YES]; // NSMutableData
NSMutableData *muData = [[NSMutableData alloc] init]; NSString *str1 = @"我要好好学习!";
NSString *str2 = @"天天向上!";
NSString *str3 = @"今天休息!"; NSDate *data1 = [str1 dataUsingEncoding:NSUTF8StringEncoding];
NSData *data2 = [str2 dataUsingEncoding:NSUTF8StringEncoding];
NSData *data3 = [str3 dataUsingEncoding:NSUTF8StringEncoding]; [muData appendData:data1];
[muData appendData:data2];
[muData appendData:data3]; NSString *muPath = @"/Users/hellovoidworld/desktop/oc/newFolder/mu.txt";
[muData writeToFile:muPath atomically:YES];
[OC Foundation框架 - 23] 文件管理的更多相关文章
- iOS - OC Foundation 框架
前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...
- OC Foundation框架—集合
Foundation框架—集合 一.NSArray和NSMutableArray (一)NSArray不可变数组 (1)NSArray的基本介绍 NSArray是OC中使用的数组,是面向对象的,以面向 ...
- OC Foundation框架—结构体
一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文 ...
- OC Foundation框架—字符串
一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:OC不可变数组 NSMutableA ...
- [OC Foundation框架 - 20] 统计代码行数
注意: 1.变量名和函数名不要混淆调用 2.不要对文件夹进行文件的操作,没有权限 3.递归调用注意初始化变量 // // main.m // CodeLineCount // // Created ...
- OC — (Foundation框架-NSDate)
NSDate:是OC中处理日期时间的一个类,可以用来表示时间 获取当前的时间 NSDate *d = [NSDate date]; 创建日期时间对象 NSLog输出是当前时间 格林时间 格式化显示时间 ...
- [OC Foundation框架 - 13] NSValue
NSNumber能够包装基本数据类型称为OC对象,是因为继承了NSValue 包装结构体成OC对象 1.自带结构体 void value() { CGPoint point = CGPointMake ...
- [OC Foundation框架 - 12] NSNumber
1.概念 NSArray,NSDictionary只能放OC对象,不能放入基本数据类型 必须使用包装类NSNumber,把基本数据类型包装成OC对象 不支持自动包装解包 void number() ...
- [OC Foundation框架 - 9] NSMutableArray
可变的NSArray,可以随意添加OC对象 1.创建 void arrayCreate() { NSMutableArray *array = [NSMutableArray arrayWithO ...
随机推荐
- 关于static继承的问题
c++primer 15.2.7节关于static继承的意思是,父类和子类共享static函数或者static成员变量,并且子类要访问还要受它们的权限限制,下面是看到的另一个例子 class Base ...
- MVC 文件上传和图片剪辑
http://www.cnblogs.com/hinton/archive/2012/03/01/2375465.html http://gallery.kissyui.com/uploader/1. ...
- inflate方法与findViewById的区别
LayoutInflater作用是将layout的xml布局文件实例化为View类对象. 对于一个没有被载入或者想要动态载入的界面,都需要使用LayoutInflater.inflate()来找 re ...
- Octave下载
发福利啦,今天下了半天Octave都没下载下来,最后让一个香港的同学帮忙下好传过来的....放到网盘里造福大家 GNU_Octave_3.8.0-6.dmg 链接: http://pan.baidu. ...
- Uploadify参数详解
属性 $('#file_upload').uploadify({ //一属性详解 id: jQuery(this).attr('id'),//绑定的input的ID la ...
- PHP使用Mysql事务实例解析
<?php //数据库连接 $conn = mysql_connect('localhost', 'root', ''); mysql_select_db('test', $conn); mys ...
- NFC(10)NDEF uri格式规范及读写示例(解析与封装ndef uri)
只有遵守NDEF uri 格式规范的数据才能写到nfc标签上. NDEF uri 格式规范 uri 只有两部分: 第1个字节是uri协议映射值,如:0x01 表示uri以 http://www.开头. ...
- WinCE启动失败的原因与解决办法分析
本文通过一个真实的嵌入式项目进行说明.文中的嵌入式系统用的是ARM处理器+WinCE平台,项目的目的是要把WinCE平台从旧版本移植到WinCE6.0平台上.但结果是这个WinCE系统在启动的时候经常 ...
- poj 2635 The Embarrassed Cryptographer(数论)
题目:http://poj.org/problem?id=2635 高精度求模 同余模定理. 题意: 给定一个大数K,K是两个大素数的乘积的值.再给定一个int内的数L 问这两个大素数中最小的一个是 ...
- freemarker跳出循环
break语句跳出当前循环,如下: <#list table.columns as c> <#if c.isPK> &l ...