如何在Objective C中将十六进制或十进制转换为二进制

时间:2015-09-07 08:35:17

标签: ios objective-c cocoa binary hex

到目前为止,我搜索的是没有API将十六进制转换为十进制二进制

有没有解决方法?

1 个答案:

答案 0 :(得分:1)

以下是转换为二进制和十六进制的方法(如果您希望字符串来自整数值。)

1)转换为二进制

- (NSString *)binaryStringWithInteger:(NSInteger)value
{
    NSMutableString *string = [NSMutableString string];
    while (value)
   {
    [string insertString:(value & 1)? @"1": @"0" atIndex:0];
    value /= 2;
   }
   return string;
}

2)转换为十六进制

十六进制只是一种显示整数的方法。

如果要创建一个十六进制表示整数的字符串,可以使用以下代码:

- (NSString *)hexFromInt:(NSInteger)val
{
return [NSString stringWithFormat:@"0x%X", val];
}