//获取document下的路径
-(NSString *) pathInCacheDirectory :(NSString *)url
{
NSArray *cachePaths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
NSString *cachePath = [cachePaths objectAtIndex:0];
return [cachePath stringByAppendingPathComponent:url];
}
//创建imageDir路径下的文件夹
-(BOOL) createDirInCache:(NSString *)url
{
NSString *imageDir = [self pathInCacheDirectory:url];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL existed = [fileManager fileExistsAtPath:imageDir ];
BOOL isCreated = NO;
if ( existed != YES )
{
isCreated = [fileManager createDirectoryAtPath:imageDir withIntermediateDirectories:YES attributes:nil error:nil];
}
return isCreated;
}
// 删除文件夹
-(BOOL) deleteDirInCache:(NSString *)url
{
NSString *imageDir = [self pathInCacheDirectory:url];
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL existed = [fileManager fileExistsAtPath:imageDir ];
bool isDeleted = false;
if ( existed == YES )
{
isDeleted = [fileManager removeItemAtPath:imageDir error:nil];
}
return isDeleted;
}
// 在directoryPath路径下的文件夹下创建文件,并在文件中写入要保存的图片文件
-(BOOL) saveImageToCacheDir:(NSString *)directoryPath imageData:(NSData *)imageData fileName:(NSString *)fileName
{
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL existed = [fileManager fileExistsAtPath:directoryPath ];
BOOL isCreated = NO;
NSString *path= [directoryPath stringByAppendingPathComponent:[NSString stringWithFormat:@"/%@",fileName]];
if ( existed )
{
[fileManager createFileAtPath:path contents:nil attributes:nil];
isCreated = [imageData writeToFile:path atomically:YES];
}
return isCreated;
}
// 在directoryPath路径下的文件夹里获取文件名为fileName的数据文件
-(NSData*) loadImageData:(NSString *)directoryPath fileName:(NSString *)fileName
{
NSFileManager *fileManager = [NSFileManager defaultManager];
BOOL dirExisted = [fileManager fileExistsAtPath:directoryPath];
if ( dirExisted == YES )
{
BOOL fileExisted = [fileManager fileExistsAtPath:directoryPath];
if (!fileExisted) {
return NULL;
}
NSData * data = [NSData dataWithContentsOfFile:[directoryPath stringByAppendingString:[NSString stringWithFormat:@"/%@",fileName]]];
return data;
}
else
{
return NULL;
}
}