#import "RootViewController.h"
@interface RootViewController ()
@end
@implementation RootViewController
- (void)viewDidLoad {
[superviewDidLoad];
//获取沙盒的根路径
NSLog(@"%@",NSHomeDirectory());
//获取documents文件夹路径
NSString *douPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES)lastObject];
NSLog(@"%@",douPath);
//获取缓存文件夹路径
NSString *cachePath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUserDomainMask, YES)lastObject];
NSLog(@"%@",cachePath);
//获取临时文件夹的路径
NSString *tmpPath =NSTemporaryDirectory();
NSLog(@"%@",tmpPath);
//1、NSUserDefaults
[[NSUserDefaultsstandardUserDefaults] setObject:@"啦啦啦啊"forKey:@"aa"];
NSString *result = [[NSUserDefaultsstandardUserDefaults] objectForKey:@"aa"];
NSLog(@"%@",result);
//借助NSUserDefaults实现判断程序是不是第一次启动
//在docouments文件夹里创建一个金瓶梅.txt文件,并写入一句话
//1、创建文件的路径
NSString *filePath = [douPathstringByAppendingPathComponent:@"金瓶梅.txt"];
//创建文件的管理者
NSFileManager *manager = [NSFileManagerdefaultManager];
//判断文件是否存在,如果存在写入,如果不存在先创建文件
if ([managerfileExistsAtPath: filePath]) {
//文件存在
} else {
//文件不存在
[manager createFileAtPath: filePathcontents:nilattributes:nil];
}
//写入内容
NSString *content =@"这是一个新的章节";
[content writeToFile: filePathatomically:YESencoding:NSUTF8StringEncodingerror:nil];
//读出来
NSString *readResult = [NSStringstringWithContentsOfFile:filePathencoding:NSUTF8StringEncodingerror:nil];
NSLog(@"%@",readResult);
//文件的复制(在documents文件夹里面复制一份)
NSString *copyFilePath = [douPathstringByAppendingPathComponent: @"金瓶梅复制版.txt"];
[manager copyItemAtPath:filePathtoPath:copyFilePath error:nil];
//文件的移动(将金瓶梅.txt移动到Library文件夹中)
//获取Library文件夹路径
NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory,NSUTF8StringEncoding, YES)lastObject];
NSString *moveFilePath = [libraryPathstringByAppendingPathComponent:@"金瓶梅.txt"];
[manager moveItemAtPath:filePathtoPath:moveFilePath error:nil];
//文件的删除(将金瓶梅复制版删除)
if ([managerfileExistsAtPath:copyFilePath]) {
//删除
[manager removeItemAtPath:copyFilePatherror:nil];
}
//查看文件夹下的所有文件
NSArray *array = [managercontentsOfDirectoryAtPath:douPatherror:nil];
NSLog(@"%ld",[arraycount]);
NSLog(@"%@",array);
//总结
//对文件的操作实际上是文件路径的操作,需要借助文件管理者NSFileManager
//读写文件只能是NSString,NSArray,NSDictionary,NSData,自定义类是无法直接写入文件的
//目前开发过程中主流的文件处理NSUserDefaults,数据库,coredata
//要把一个自定义的类写入文件,需要借助归档操作,读出来是反归档
// Do any additional setup after loading the view.
}
- (void)didReceiveMemoryWarning {
[superdidReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end