Object-C学习(八):文件管理【一】
2013-08-21 15:34
417 查看
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);
这个类的作用: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);
相关文章推荐
- Linux学习笔记------讲9.3.1文件系统管理-----fdisk分区---分区过程
- Oracle学习(十五)之用户配置文件及用户管理
- linux系统管理学习笔记之六---linux文件系统
- 嵌入式学习28(linux系统函数之文件、文件夹管理相关函数)
- 实验楼linux学习笔记(二):用户及文件权限管理
- Linux学习-文件管理(1)
- [Linux] Linux学习笔记(5)-文件与目录管理
- object-c学习(三)源文件分割与组织
- OC学习 第十节 文件管理
- 学习鸟哥私房菜(三)之linux磁盘与文件系统管理
- Linux学习之旅【5】Linux文件与目录管理
- Oracle的学习四:数据库管理员、逻辑备份与恢复、数据字典、动态性能视图、管理表空间与数据文件
- Python学习之路——Linux基础之文件系统管理
- 《鸟哥的Linux学习:基础篇》第六章:Linux文件和=目录管理
- Linux私房菜学习-第7章Linux文件与目录管理
- centOS学习(2)--文件与目录管理
- 鸟哥Linux私房菜 基础学习篇读书笔记(10):Linux磁盘和文件系统管理(3)
- 一起学习Android开发_1_已下载文件的管理demo
- linux命令学习(一)—— 文件和目录管理命令
- Linux学习命令汇总六——磁盘分区,磁盘挂载,文件系统管理,压缩及归档命令