| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- //
- // FileCache.m
- // RedAnt Mobile
- //
- // Created by Ray on 08/09/2017.
- // Copyright © 2017 Ray. All rights reserved.
- //
- #import "FileCache.h"
- #import "AppDelegate.h"
- #import "const.h"
- #import "RAUtils.h"
- @implementation FileCache
- + (void) cache_img: (NSData*) imgData filename:(NSString*) name saveTo:(NSString*) path
- {
-
- path=[path stringByReplacingOccurrencesOfString:@"https://" withString:@""];
- path=[path stringByReplacingOccurrencesOfString:@"http://" withString:@""];
- path=[path stringByReplacingOccurrencesOfString:name withString:@""];
-
-
-
-
- if(path.length==0)
- path=@"";
-
- if(imgData==nil)
- return;
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
- NSString *cachefolder = [paths objectAtIndex:0];
- NSString *img_cache = [cachefolder stringByAppendingPathComponent:[NSString stringWithFormat:@"img_cache/%@",path]];
- NSFileManager* fileManager = [NSFileManager defaultManager];
- BOOL bdir=YES;
- if(! [fileManager fileExistsAtPath:img_cache isDirectory:&bdir])
- {
-
- NSError *error = nil;
- bool bsuccess=[fileManager createDirectoryAtPath:img_cache withIntermediateDirectories:YES attributes:nil error:&error];
-
- if(!bsuccess)
- DebugLog(@"Create cache folder failed");
-
- }
- NSString *filePath = [img_cache stringByAppendingPathComponent:name];
- bool bsuccess=[imgData writeToFile:filePath atomically:YES];
-
- if(bsuccess)
- DebugLog(@"IMG CACHE SUCCESS,%@",name);
- else
- DebugLog(@"IMG CACHE FAILED,%@",name);
-
- }
- + (NSData*) load_cached_img:(NSString*) filename loadFrom:(NSString*) path
- {
- if(path.length==0)
- return nil;
-
- path=[path stringByReplacingOccurrencesOfString:@"https://" withString:@""];
- path=[path stringByReplacingOccurrencesOfString:@"http://" withString:@""];
- // path=[path stringByReplacingOccurrencesOfString:filename withString:@""];
-
- // AppDelegate *appDelegate = (AppDelegate*)[[UIApplication sharedApplication] delegate];
-
- // if(appDelegate.bEnable_Cache==false)
- // return nil;
-
-
- NSData* data = nil;
-
-
- NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
- NSString *cachefolder = [paths objectAtIndex:0];
- NSString *img_cache = [cachefolder stringByAppendingPathComponent:@"img_cache"];
- NSString *filePath = [img_cache stringByAppendingPathComponent:path];
-
- NSFileManager* fileManager = [NSFileManager defaultManager];
- if( [fileManager fileExistsAtPath:filePath ])
- {
- data = [NSData dataWithContentsOfFile: filePath];
- }
-
- // NSString* sqliteQuery = [NSString stringWithFormat:@"SELECT img FROM img_cache WHERE name = '%@'", filename];
- // sqlite3_stmt* statement;
-
- // sqlite3 *db = [self get_db];
- //
- //// if( sqlite3_prepare_v2(db, [sqliteQuery UTF8String], -1, &statement, NULL) == SQLITE_OK )
- //// {
- //// if( sqlite3_step(statement) == SQLITE_ROW )
- //// {
- //// int length = sqlite3_column_bytes(statement, 0);
- //// data = [NSData dataWithBytes:sqlite3_column_blob(statement, 0) length:length];
- //// }
- //// }
- //
- // // Finalize and close database.
- // sqlite3_finalize(statement);
-
-
- // [iSalesDB close_db:db];
- return data;
-
- }
- @end
|