方法一:
IOS 十进制转十六进制
NSString *hexString = [NSString stringWithFormat:@"%@",[[NSString alloc] initWithFormat:@"%1x",整形参数]];
方法二:
// 16进制转换
- (void)transPassToHex{
pwdToHex = @"";
int length = [loginBookPassword length];
for(int i = 0; i < length; i++){
NSRange range = NSMakeRange(i, 1);
NSString * str = [loginBookPassword substringWithRange:range];
// 转换位ascii码整数
int asciiCode = [str characterAtIndex:0];
[self transAsciiToHex:asciiCode];
}
//BOL_HexPassword = [[NSString alloc]initWithString:tranBuffer];
NSLog(@"pwdToHex===%@",pwdToHex);
}
- (void)transAsciiToHex:(int) asciiCode{
int n = asciiCode / 16;
int e = asciiCode % 16;
if (n > 16) {
[self transAsciiToHex : n];
}else{
if (n >= 10) {
[self transToEn: n];
}else if(n > 0){
pwdToHex = [pwdToHex stringByAppendingFormat:@"%d",n];
}
}
if (e >= 10) {
[self transToEn: e];
}else{
pwdToHex = [pwdToHex stringByAppendingFormat:@"%d",e];
}
}
- (void)transToEn:(int) e{
switch (e) {
case 10:
pwdToHex = [pwdToHex stringByAppendingString:@"A"];
break;
case 11:
pwdToHex = [pwdToHex stringByAppendingString:@"B"];
break;
case 12:
pwdToHex = [pwdToHex stringByAppendingString:@"C"];
break;
case 13:
pwdToHex = [pwdToHex stringByAppendingString:@"D"];
break;
case 14:
pwdToHex = [pwdToHex stringByAppendingString:@"E"];
break;
case 15:
pwdToHex = [pwdToHex stringByAppendingString:@"F"];
break;
default:
break;
}
}