У меня есть сценарий, где я хочу, чтобы преобразовать строку в HexValue и извлечение строку из HexValueКак преобразовать строку в шестнадцатеричное значение и получить строку обратно от шестнадцатеричного значения
Для, например, у меня есть строка со значением '33 ' в этом . Поэтому, когда я конвертирую его в шестнадцатеричный, я получаю результат как «21», а когда я конвертирую «21», то есть шестнадцатеричное значение обратно в строку, я должен получить «33» назад в качестве вывода.
Ниже приведен код, который я сделал для преобразования строки в шестнадцатеричном
+ (NSString *) hexValue:(NSString *)str {
return [NSString stringWithFormat:@"%lX",
(unsigned long)[str integerValue]];
}
так, когда я передаю «33» к этому методу возвращается «21», который является правильным , но проблема в том, что я хочу получить «33» назад от «21»
Ниже приведен код
+ (NSString *) unHexValue:(NSString *)str {
return [NSString stringWithFormat:@"%@",str];
}
но это не возвращает ожидаемое значение, которое «33». Вместо этого он возвращает только 21.
Посмотрите на раздел Unix командной strtol 3 библиотеки() –
Чтобы справиться с этим в какао (а не C), посмотрите на «NSScanner». HTH – CRD