Object-C学习(八):文件管理【一】
来源:互联网 发布:黑马程序员讲师 编辑:程序博客网 时间:2024/05/16 15:46
NSFileManager:
这个类的作用:1、创建一个新文件
2、从现有文件中读取数据
3、将数据写入文件中
4、重命名文件
5、删除文件
6、测试文件是否存在
7、确定文件的大小及其他属性
8、复制文件
9、测试两个文件的内容是否相同
文件路径问题:
每个文件的路径都是一个NSString对象,路径又分为相对路径和绝对路径。相对路径就是相对与当前目录的文件路径,斜线用于隔开路径中的目录列表,例如file1/main.m就是当前目录下file1文件里的main.m文件。绝对路径是一个完整路径,从系统根目录开始一直追溯到你要寻找的文件,这个路径为绝对路径。绝对路径一般是以“/”开始,最前面的斜线就是系统根目录,/Users/MyMacName,就指定了三个目录,即系统根目录、Users目录、MyMacName目录。这是MAC下的,ios下可能会涉及到安全沙箱,这里不做讨论。
常见的NSFileManager文件方法:
1、初始化:
NSFileManager *fm = [NSFileManager defaultManager];
2、判断指定路径文件是否存在:
NSString *path = @"file.txt";
NSString *path2 = @"file2.txt";
NSString *path3 = @"file3.txt";
if ([fm fileExistAtPath:path] == NO)
{
NSLog(@"文件未找到");
}
3、复制一个新的文件
if ([fm copyItemAtPath:path toPath:path2 error:nil] == NO)
{
NSLog(@"复制失败");
}
4、判断两个文件内容是否相同
if ([fm contentEqualAtPath:path andPath:path2] == NO)
{
NSLog(@"两个文件不相同");
}
5、重命名一个文件
if ([fm moveItemAtPath:path2 andPath:path3] == NO)
{
NSLog(@"两个文件不相同");
}
6、读取文件内容
NSData *data = [fm contentsAtPath:path];
NSString *str = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
NSLog(@"%@",str);
上面用到了NSData 关于NSData内容这里比较详细。
NSFileManager提供了处理目录的方法:
-(NSString *) currentDirectoryPath 获取当前目录
-(BOOL) changeCurrentDirectoryPath:path更改当前目录
-(BOOL) copyItemAtPath:from toPath:to error:err复制目录结构(to不能是已存在的)
-(BOOL) creatDirectoryAtPath:path withIntermediateDirectories:(BOOL)flag attributes:arr创建一个新的目录
-(BOOL) fileExistsAtPath:path isDirectory:(BOOL *)flag测试文件是不是目录
-(NSArray *) contentsOfDirectoryAtPath:path error:err列出目录内容
-(NSDirectoryEnumerator *) enumeratorAtPath:path枚举目录内容
-(BOOL) removeItemAtPath:path error:err删除空目录
-(BOOL) moveItemAtPath:from toPath: to error:err重命名或移动一个目录(to不能是已存在的)
NSProcessInfo:
用来检索当前运行程序的各种信息。
NSProcessInfo *processInfo = [[NSProcessInfoalloc]init];
//以NSString对象数字的形式返回当前进程的参数
NSArray *array = [processInfoarguments];
NSLog(@"array:%@",array1);
//返回变量/值对词典。描述当前的环境变量
NSDictionary *dictionary = [processInfoenvironment];
NSLog(@"%@",dictionary);
//返回进程名称
NSString *str = [processInfoprocessName];
NSLog(@"%@",str);
//返回操作系统名称
NSString *str = [processInfooperatingSystemName];
NSLog(@"%@",str);
//返回操作系统当前版本
NSString *str = [processInfooperatingSystemVersionString];
NSLog(@"%@",str20);
- Object-C学习(八):文件管理【一】
- Object-C学习笔记(一)
- Object-C学习笔录(一)
- Object-C 基础学习(一)
- Effective Object-C 2.0 学习(一)
- Object-C学习笔记(一)
- object c 学习(一) : runtime
- object-c内存管理(一) MRC
- 20160812Object-c关于内存管理一
- Object-C学习笔记十-----内存管理
- ios学习--Object-C中的内存管理
- object-c 内存管理学习笔记
- Object C学习笔记4-内存管理
- OBject-C 学习笔记之内存管理
- Object C学习笔记4-内存管理
- Object-c学习之路八(NSArray(数组)遍历和排序)
- Object-C 学习笔记(八)---面相对象(继承)
- Object C 获取日期(学习笔记一)
- ENUM
- POJ3690+位运算
- 编程之美3.3计算字符串的相似度
- unity3d Shader开发简介
- fopen
- Object-C学习(八):文件管理【一】
- Linux_make命令提示no found make的解决办法
- 整理用Java实现数字转化成字符串左边自动补零方法
- MySql从表结果集中随机取一条数据
- centos系统使用yum安装vlc
- Android一个程序使用另一个程序的资源
- API设计小手册(下) — 设计流程和设计原则
- 关于ListView滑动混乱问题
- awk 数据处理工具