2009-08-13 3 views
0

Как преобразовать целое число байт строки (NSString байт),новообращенного Int байт (NSString)

Я использовал ниже код обугленного Барр [4];
barr [0] = (unsigned int) (num & 0xff);
barr [1] = (без знака int) ((num >> 8) & 0xff);
barr [2] = (unsigned int) ((num >> 16) & 0xff);
barr [3] = (без знака int) (num >> 24);

NSString * str = [NSString stringwithformat: @ "% x", barr];

но я получаю «BFFFF648», но не в двоичных данных, которые я хочу, чтобы NSlog печатал нечитаемые двоичные данные?

+1

Мне непонятно, что вы хотите делать. можете ли вы привести пример? –

ответ

2

Если вы действительно хотите строку байтов: NSString не является правильной структурой данных для представления байтов. Он предназначен для представления текста и может быть конвертирован между кодировками и различными другими преобразованиями. Чтобы представить строку байтов, используйте NSData. (Например, что-то вроде [NSData dataWithBytes:&myInteger length:sizeof(myInteger)].)

+0

Использовать 'NSData', как показано выше, может быть недостаточно. Эта строка кода может иметь разные эффекты на разных аппаратных архитектурах из-за сущности. –

+0

Работа с необработанными байтами многобайтового типа данных по своей сути привязана к оборудованию и его контенту. – Chuck

Смежные вопросы