复制代码 代码如下: - (NSString *)dataPath:(NSString *)file { NSString *path = [[NSHomeDirectory() stringByAppendingPathComponent:@"Documents"] stringByAppendingPathComponent:@"badge"]; BOOL bo = [[NSFileManager defaultManager] createDirectoryAtPath:path withIntermediateDirectories:YES attributes:nil error:nil]; NSAssert(bo,@"创建目录失败"); NSString *result = [path stringByAppendingPathComponent:file]; return result; } - (void)viewDidLoad { [super viewDidLoad]; //此处首先指定了图片存取路径(默认写到应用程序沙盒 中) NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES); //并给文件起个文件名 NSString *imageDir = [[[paths objectAtIndex:0] stringByAppendingPathComponent:@"163"] stringByAppendingPathComponent:@"songzi"]; //存放图片的文件夹 NSString *imagePath =[imageDir stringByAppendingPathComponent:@"文件名.png"]; NSData *data = nil; //检查图片是否已经保存到本地 if([self isExistsFile:imagePath]){ data=[NSData dataWithContentsOfFile:imagePath]; }else{ data = [NSData dataWithContentsOfURL:[NSURL URLWithString: @"网址"]]; //创建文件夹路径 [[NSFileManager defaultManager] createDirectoryAtPath:imageDir withIntermediateDirectories:YES attributes:nil error:nil]; //创建图片 [UIImagePNGRepresentation([UIImage imageWithData:data]) writeToFile:imagePath atomically:YES]; } imageView.image = [UIImage imageWithData:data]; } 检查文件是否存在 复制代码 代码如下: NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:@""]; if(path==NULL) 方法二: 复制代码 代码如下: NSFileManager *fileManager = [NSFileManager defaultManager]; //Get documents directory NSArray *directoryPaths = NSSearchPathForDirectoriesInDomains (NSDocumentDirectory, NSUserDomainMask, YES); NSString *documentsDirectoryPath = [directoryPaths objectAtIndex:0]; if ([fileManager fileExistsAtPath:@""]==YES) { NSLog(@"File exists"); } 方法三: 复制代码 代码如下: //判断文件是否存在 if(![c judgeFileExist:@"user.plist"]) { NSLog(@"请确认该文件是否存在!"); return; } 方法四: 复制代码 代码如下: //判断文件是否存在 -(BOOL)judgeFileExist:(NSString * )fileName { //获取文件路径 NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:@""]; if(path==NULL) return NO; returnYES; } |