我需要将来自UI的字符串输入转换为目标c中的十六进制数。该字符串是一个HTML颜色代码,如“ff0000”('#'将以图解方式处理),它应该转换为数字ff0000以提供颜色选择。或者,目标c中是否有颜色选择器?没有在xib对象中找到一个。
答案 0 :(得分:14)
来自Objective C parse hex string to integer
unsigned result = 0;
NSScanner *scanner = [NSScanner scannerWithString:@"ff0000"];
[scanner scanHexInt:&result];
或使用“c”:
uint32_t value;
NSString *stringValue = @"ff0000";
const char *string = [stringValue cStringUsingEncoding:NSUTF8StringEncoding];
sscanf(string, "%x" , &value);
答案 1 :(得分:1)
您可以使用以下行进行转换。它只有一行代码:
NSString *hexString = @"01FFFFAB";
length = (UInt64)strtoull([sizeLine UTF8String], NULL, 16);
NSLog(@"The required Length is %d", length);
快乐编码!!!