#define PATH @"/Users/wenhua/testdir"

// 删除, 复制 剪切  这些行为都是管理文件的行为

//创建文件

void createFile(void)

{

//文件管理器类, 一个app中只需要一个这样的管理器对象,即单例

NSFileManager *fm =[NSFileManager defaultManager];

//创建文件

//    fm createFileAtPath:<#(NSString *)#> contents:<#(NSData *)#> attributes:<#(NSDictionary *)#>

[fm createFileAtPath:[NSString stringWithFormat:@"%@%@",PATH,@"/first.txt"] contents:[@"abcde" dataUsingEncoding:NSUTF8StringEncoding] attributes:nil];

}

//创建文件夹

void createDir(void)

{

//文件管理器类, 一个app中只需要一个这样的管理器对象,即单例

NSFileManager *fm =[NSFileManager defaultManager];

//创建文件夹

//    fm createDirectoryAtPath:<#(NSString *)#> withIntermediateDirectories:<#(BOOL)#> attributes:<#(NSDictionary *)#> error:<#(NSError *__autoreleasing *)#>

NSError *error=nil;

[fm createDirectoryAtPath:[NSString stringWithFormat:@"%@%@",PATH,@"/middle/newdir"] withIntermediateDirectories:YES attributes:nil error:&error];

if (error!=nil) {

NSLog(@"%@",error);

return;

}

}

//删除文件

void rmFile(void)

{

//文件管理器类, 一个app中只需要一个这样的管理器对象,即单例

NSFileManager *fm =[NSFileManager defaultManager];

//删除

//    fm removeItemAtPath:<#(NSString *)#> error:<#(NSError *__autoreleasing *)#>

NSError *error=nil;

[fm removeItemAtPath:[NSString stringWithFormat:@"%@%@",PATH,@"/first.txt"] error:&error];

if (error) {

NSLog(@"%@",error);

}

}

//复制文件

void cpFile(void)

{

//文件管理器类, 一个app中只需要一个这样的管理器对象,即单例

NSFileManager *fm =[NSFileManager defaultManager];

//复制

//    fm copyItemAtPath:<#(NSString *)#> toPath:<#(NSString *)#> error:<#(NSError *__autoreleasing *)#>

NSError* error=nil;

//复制文件

[fm copyItemAtPath:@"/Users/xiaozai/Desktop/test.plist" toPath:[NSString stringWithFormat:@"%@%@",PATH,@"/test.plist"] error:&error];

if (error) {

NSLog(@"%@",error);

}

//复制文件夹

[fm copyItemAtPath:@"/Users/xiaozai/Desktop/deskdir" toPath:[NSString stringWithFormat:@"%@%@",PATH,@"/deskdir"] error:&error];

if (error) {

NSLog(@"%@",error);

}

}

//剪切文件

void mvFile(void)

{

//剪切,移动

//    fm moveItemAtPath:<#(NSString *)#> toPath:<#(NSString *)#> error:<#(NSError *__autoreleasing *)#>

//文件管理器类, 一个app中只需要一个这样的管理器对象,即单例

NSFileManager *fm =[NSFileManager defaultManager];

NSError *error=nil;

[fm moveItemAtPath:[NSString stringWithFormat:@"%@%@",PATH,@"/test.plist"] toPath:@"/Users/xiaozai/Desktop/test.plist" error:&error];

if (error) {

NSLog(@"%@",error);

}

[fm moveItemAtPath:[NSString stringWithFormat:@"%@%@",PATH,@"/deskdir"] toPath:@"/Users/xiaozai/Desktop/deskdir" error:&error];

if (error) {

NSLog(@"%@",error);

}

}

// 文件是否存在于某个路径

bool isFileExistAtPath()

{

NSString *path = [NSString stringWithFormat:@"%@/file.zip", NSHomeDirectory()];

NSFileManager *fm = [ NSFileManager defaultManager];

return [fm fileExistsAtPath:path];

}

// 若创建未出错,那一定就会返回TRUE了

//遍历某个目录

void travelListDir(void)

{

NSFileManager *fm = [ NSFileManager defaultManager];

NSError* error=nil;

//                       浅层遍历目录

NSArray* retArray =[fm contentsOfDirectoryAtPath:PATH error:&error];

if (error) {

NSLog(@"%@",error);

}

NSLog(@"retArray:%@",retArray);

//  深层遍历目录

NSArray * array2= [fm subpathsOfDirectoryAtPath:@"/Users/wenhua/work/oc/19day" error:&error];

NSEnumerator * enumerator = [ array2 objectEnumerator];

id obj;

while (obj=[enumerator nextObject]) {

NSLog(@"%@",obj);

}

}

void otherMethods(void)

{

NSFileManager *fm = [ NSFileManager defaultManager];

//获取app的当前工作路径

NSLog(@"本程序的当前工作路径为:%@",[fm currentDirectoryPath]);

//传一个文件(夹)的绝对路径,得到一个文件(夹)名

NSLog(@"%@",[fm displayNameAtPath:PATH]);

}

NSFileManeger的更多相关文章

随机推荐

  1. Razor练习4

    今天练习Razor的逻辑处理.一般会使用下面 1. if 2. else 3. else if 4. switch 下面演示中,Insus.NET分别演示1,2, 4:xxx.cshtml代码如下: ...

  2. mysql常用函数参考

    mysql常用函数参考   对于针对字符串位置的操作,第一个位置被标记为1. ASCII(str) 返回字符串str的最左面字符的ASCII代码值.如果str是空字符串,返回0.如果str是NULL, ...

  3. 用Supervisord管理Python进程

    http://feilong.me/2011/03/monitor-processes-with-supervisord Supervisord是用Python实现的一款非常实用的进程管理工具,类似于 ...

  4. spring的事务操作

    我们项目一期已经差不多结束了,所以一些细节也被拿了出来,出现最多的就是事务的操作了.因为自己负责的是一个模块(因为是另外一个项目的负责人),所以组员经常会遇到事务的问题,会出现很多奇葩的用法,各种乱用 ...

  5. TestNG官方文档中文版(3)-testng.xml

    TestNG的官方文档的中文翻译版第3章,原文请见 http://testng.org/doc/documentation-main.html 3 - testng.xml 调用TestNG由几种不同 ...

  6. eventProxy

    1.功能 解决javascript回调地狱 fs.readFile('./file1.txt', 'utf8', function(err, content1){ fs.readFile('./fil ...

  7. Hibernate(六)__对象的三种状态

    瞬时(transient):数据库中没有数据与之对应,超过作用域会被JVM垃圾回收器回收,一般是new出来且与session没有关联的对象. 持久(persistent):数据库中有数据与之对应,当前 ...

  8. 【转】超实用PHP函数总结整理

    原文链接:http://www.codeceo.com/article/php-function.html 1.PHP加密解密 PHP加密和解密函数可以用来加密一些有用的字符串存放在数据库里,并且通过 ...

  9. mac下彻底卸载mysql方法

    sudo rm /usr/local/mysqlsudo rm -rf /usr/local/mysql*sudo rm -rf /Library/StartupItems/MySQLCOMsudo ...

  10. Converse.js – 开源的 XMPP 聊天客户端

    Converse.js 是一个运行在浏览器的免费和开源的聊天客户端.它可以集成到任何网页.类似于 Facebook 的聊天,它也支持多用户聊天室.Converse.js 可以连接到任何可访问的 XMP ...