X-Git-Url: http://git.ithinksw.org/ITFoundation.git/blobdiff_plain/2c8e10b58c81bf1170d3ed8df82b606f0815285f..4ad564f9120afcd0f1ca486c501f72c93a8cdfb1:/ITCategory-NSString.m diff --git a/ITCategory-NSString.m b/ITCategory-NSString.m index fd036ae..6aed778 100644 --- a/ITCategory-NSString.m +++ b/ITCategory-NSString.m @@ -1,4 +1,5 @@ #import "ITCategory-NSString.h" +#import "ITCategory-NSData.h" @implementation NSString (ITFoundationCategory) @@ -7,18 +8,30 @@ } - (id)initWithFourCharCode:(unsigned long)fourCharCode { - return [self initWithFormat:@"%.4s", &fourCharCode]; + return [self initWithString:(NSString *)UTCreateStringForOSType(fourCharCode)]; + //return [self initWithFormat:@"%.4s", &fourCharCode]; } - (unsigned long)fourCharCode { - const unsigned char *c_s = [self UTF8String]; + return UTGetOSTypeFromString((CFStringRef)self); + + //Die nasty bitshifting + /*const unsigned char *c_s = [self UTF8String]; unsigned long tmp = *c_s++; tmp <<= 8; tmp |= *c_s++; tmp <<= 8; tmp |= *c_s++; tmp <<= 8; - return tmp |= *c_s++; + return tmp |= *c_s++;*/ +} + +- (NSData *)MD5 { + return [[self dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:NO] MD5]; +} + +- (NSData *)SHA1 { + return [[self dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:NO] SHA1]; } @end \ No newline at end of file