Как «конкатить» байты из NSString и его длину вместе? - PullRequest
0 голосов
/ 18 января 2012

У меня есть NSString [WORD], имеющая некоторую длину [LEN]. Что мне нужно сделать, так это получить байты из этой строки и соединить их с короткой длиной (2 байта), поэтому у меня будет [WORD] [LEN]. Например. Строка "AB" в utf8 HEX равна 4142. Длина этой строки составляет 2 ==> 0002 в HEX. Так что все вместе - 41420002. Как собрать эти байты?

1 Ответ

0 голосов
/ 18 января 2012

Я думаю, что этот код делает то, что вы хотите.

NSString *myString = @"AB";
const char *chars = [myString UTF8String];

NSMutableString * result = [NSMutableString string];
for (int i=0; i < [myString length]; i++) {
    [result appendFormat:@"%X", chars[i]];
}

[result appendFormat:@"%04X", [myString length]];

NSLog(@"%@", result);

Надеюсь, это поможет!

...