Я бы конвертироватьNSString к неподписанные символ []
NSString *myString = @"0x10 0x1c 0x37 0x00"; //Aquired reading text file using NSString methods..
в
unsigned char convertedfrommyString[] = { 0x10, 0x1c, 0x37, 0x00 };
Моя цель состоит в том, чтобы aquiring их, а затем поменять его, используя этот код:
unsigned char convertedfrommyString[] = { 0x10, 0x1c, 0x37, 0x00 };
int data = *((int *) convertedfromString);
NSLog(@"log = %08x", data);
значение выходной должно быть:
log = 00371c10
Любая помощь?
EDIT
С обеих Ян Батист Юнес и Свена я нашел способ, чтобы понять мою проблему и решить с помощью этого кода:
NSString *myString = [[@"0x10 0x1c 0x37 0x00" stringByReplacingOccurrencesOfString:@"0x" withString:@""] stringByReplacingOccurrencesOfString:@" " withString:@""];
unsigned result = 0;
NSScanner *scanner = [NSScanner scannerWithString:myString];
[scanner scanHexInt:&result];
int reverse = NSSwapInt(result);
NSLog(@"scanner: %8u", result);
NSLog(@"bytes:%08x", result);
NSLog(@"reverse:%08x (that is what i need!)", reverse);
Действительно OK! Но могу ли я принять два ответа?
как * myString = @ "101c3700", а затем что? :) – Mike97
Не создавайте сканер с помощью 'scannerWithString',' scanUpToString: @ "" inString: aNumberString', а затем конвертируйте переменную 'aNumberString' в int с другим сканером и' scanNexInt: @ myInt' –
Спасибо, что ответили на меня. Я нашел способ сделать то, что мне нужно от вашего предложения, но также и от Sven answer ... – Mike97