Я использую этот код, чтобы получить md5 Струнные окрошкаПреобразование NSDecimalNumber в NSString
- (NSString *) md5:(NSString *) input
{
const char *cStr = [input UTF8String];
unsigned char digest[16];
CC_MD5(cStr, strlen(cStr), digest); // This is the md5 call
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x", digest[i]];
return output;
}
Когда я это сделать его работу совершенной
[self md5:@"mystring"];
Но когда я сделать это
[self md5:userId];
я имеют погрешность
Согласующий приложение из-за неперехваченного исключением 'NSInvalidArgumentException', причина: '- [NSDecimalNumber UTF8String]: непризнанная селектор послан к экземпляру 0x61a7080'
идентификатор пользователя является NSString
NSString *userId; @property(retain,nonatomic) NSString *userId;
но это contaile facebook идентификатор пользователя, что-то вроде "3309843" я попытался
[self md5:[userId stringValue]]];
и я до сих пор имеют ту же ошибку
UPDATE я попробовал этот
[self md5:@"980232376"];
и до сих пор имеют ту же ошибку, я думаю, что проблема является метод md5. Я не могу получить md5 строки чисел?
до сих пор не работают, я обновил свой пост – user567
i'am жаль, там был NSLog (@ «хэш% @» , [self md5: uiserId]; я не видел, он работает отлично, спасибо – user567