////////////////////////////////////////////////////////////////////////////////////////////////////////////
- (NSMutableDictionary *)resourcesCheck {
NSString* bundlePath = [[NSBundle mainBundle] bundlePath];
NSDirectoryEnumerator *enumerator = [[NSFileManager defaultManager] enumeratorAtPath:bundlePath];
NSString *filePath;
NSMutableDictionary *mArray = [[NSMutableDictionary alloc] init];
while ((filePath = [enumerator nextObject]) != nil) {
if (![[filePath pathExtension] isEqualToString:@"nib"]){
NSString *path = [bundlePath stringByAppendingPathComponent:filePath];
NSData *nsData = [NSData dataWithContentsOfFile:path];
if (nsData)
NSLog(@"%@", [nsData MD5]);
[mArray setObject:[nsData MD5] forKey:filePath];
}
}
return mArray;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////
#import "NSString+MD5.h"
@interface NSString(MD5)
- (NSString *)MD5;
@end
////////////////////////////////////////////////////////////////////////////////////////////////////////////
#import <CommonCrypto/CommonDigest.h>
@implementation NSString(MD5)
- (NSString*)MD5
{
// Create pointer to the string as UTF8
const char *ptr = [self UTF8String];
// Create byte array of unsigned chars
unsigned char md5Buffer[CC_MD5_DIGEST_LENGTH];
// Create 16 bytes MD5 hash value, store in buffer
CC_MD5(ptr, strlen(ptr), md5Buffer);
// Convert unsigned char buffer to NSString of hex values
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x",md5Buffer[i]];
return output;
}
@end
////////////////////////////////////////////////////////////////////////////////////////////////////////////
#import "NSData+MD5.h"
@interface NSData(MD5)
- (NSString *)MD5;
@end
////////////////////////////////////////////////////////////////////////////////////////////////////////////
#import <CommonCrypto/CommonDigest.h>
@implementation NSData(MD5)
- (NSString*)MD5
{
// Create byte array of unsigned chars
unsigned char md5Buffer[CC_MD5_DIGEST_LENGTH];
// Create 16 byte MD5 hash value, store in buffer
CC_MD5(self.bytes, self.length, md5Buffer);
// Convert unsigned char buffer to NSString of hex values
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x",md5Buffer[i]];
return output;
}
@end
////////////////////////////////////////////////////////////////////////////////////////////////////////////