iOS 文件写入沙盒与删除文件

96
zxb有缘
2016.07.25 17:12* 字数 434

// 把 图片 写入 沙盒

-(void)photoFile {

//此处首先指定了图片存取路径(默认写到应用程序沙盒 中)

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);

//并给文件起个文件名

NSString *uniquePath=[[paths objectAtIndex:0] stringByAppendingPathComponent:@"pin"];

BOOL blHave=[[NSFileManager defaultManager] fileExistsAtPath:uniquePath];

if (blHave) {

NSLog(@"already have");

return ;

}

//此处的方法是将图片写到Documents文件中 如果写入成功会弹出一个警告框,提示图片保存成功

NSString *strPathOld = [[NSBundle mainBundle] pathForResource:@"pin" ofType:@"png"];

NSData *data = [NSData dataWithContentsOfFile:strPathOld];

BOOL result = [data writeToFile:uniquePath atomically:YES];

if (result) {

NSLog(@"success");

}else {

NSLog(@"no success");}

}

// 删除沙盒里的文件

-(void)deleteFile {

NSFileManager* fileManager=[NSFileManager defaultManager];

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);

//文件名

NSString *uniquePath=[[paths objectAtIndex:0] stringByAppendingPathComponent:@"pin.png"];

BOOL blHave=[[NSFileManager defaultManager] fileExistsAtPath:uniquePath];

if (!blHave) {

NSLog(@"no  have");

return ;

}else {

NSLog(@" have");

BOOL blDele= [fileManager removeItemAtPath:uniquePath error:nil];

if (blDele) {

NSLog(@"dele success");

}else {

NSLog(@"dele fail");

}}}

// 图片

UIImage *img = [UIImage imageNamed:@"1.png"];

NSData* data = UIImagePNGRepresentation(img);

//向沙盒里 写入文件夹,并向文件夹里 写入东西

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *document = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

NSString *folder = [document stringByAppendingPathComponent:@"folder"];

NSString *filePath = [folder stringByAppendingPathComponent:@"test.png"];

if (![fileManager fileExistsAtPath:folder]) {

BOOL blCreateFolder= [fileManager createDirectoryAtPath:folder withIntermediateDirectories:NO attributes:nil error:NULL];

if (blCreateFolder) {

NSLog(@" folder success");

}else {

NSLog(@" folder fial");

}

}else {

NSLog(@" 沙盒文件已经存在");

}

if (![fileManager fileExistsAtPath:filePath]) {

NSString *strPathOld = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"png"];

NSData *data = [NSData dataWithContentsOfFile:strPathOld];

BOOL result = [data writeToFile:filePath atomically:YES];

if (result) {

NSLog(@"success");

}else {

NSLog(@"no success");}}

//得到沙盒文件夹 下的所有文件

NSFileManager *fileManager = [NSFileManager defaultManager];

NSString *document=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

NSString *folder =[document stringByAppendingPathComponent:@"folder"];

NSArray *fileList ;

fileList =[fileManager contentsOfDirectoryAtPath:folder error:NULL];

for (NSString *file in fileList) {

NSLog(@"file=%@",file);

NSString *path =[folder stringByAppendingPathComponent:file];

NSLog(@"得到的路径=%@",path);

}

日记本