Objective C 如何将十六进制或十进制转换为二进制
How to convert Hexadecimal or Decimal to Binary in Objective C
据我搜索,没有 API 可以将 十六进制 转换为 十进制 或 二进制
有什么解决方法吗?
以下是转换为二进制和十六进制的方法(如果您需要整数值的字符串。)
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];
}
据我搜索,没有 API 可以将 十六进制 转换为 十进制 或 二进制
有什么解决方法吗?
以下是转换为二进制和十六进制的方法(如果您需要整数值的字符串。)
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];
}