4

我需要将来自 UI 的字符串输入转换为目标 c 中的十六进制数。该字符串是一个 HTML 颜色代码,如 "ff0000"('#' 将以图表方式处理),它应该被转换为数字 ff0000 以提供颜色选择。或者,目标 c 中是否有颜色选择器?在 xib 对象中找不到一个。

4

2 回答 2

14

Objective C解析十六进制字符串到整数

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);
于 2012-12-31T21:39:57.863 回答
1

您可以使用下面的行进行转换。它只有一行代码:

NSString *hexString = @"01FFFFAB";
length = (UInt64)strtoull([sizeLine UTF8String], NULL, 16);
NSLog(@"The required Length is %d", length);

快乐编码!!!

于 2014-08-26T10:59:02.463 回答