NSUTF16LittleEndianStringEncoding создает байтовый массив - PullRequest
0 голосов
/ 11 марта 2012

Мне нужно зашифровать строку.Служба, которой я ее отправляю, требует, чтобы это был хэш MD5 байтового массива строки в UTF16LE.

В основном: если у меня есть myString, который необходимо поместить в байтовый массив UTF16LE,и затем этот массив должен быть MD5-хэшированным.

Действительно ли NSUTF16LittleEndianStringEncoding создает байтовый массив?Я не могу сказать из документации, если это то, что происходит.Если этого не произойдет, есть ли у кого-нибудь хороший способ создать байтовый массив из строки с кодировкой UTF16LE?Я пытался использовать getBytes, [myString bytes] и const char, и я все еще вычеркиваю.По общему признанию есть кое-что, что я не понимаю, но документация @ dev.apple не проливает свет, который я могу видеть.Примечание: я задал похожий вопрос на днях, но с тех пор я узнал больше информации о том, что они хотят.

Спасибо

1 Ответ

0 голосов
/ 30 августа 2012

будет при использовании с -[NSString dataUsingEncoding:]:

NSData * data = [string dataUsingEncoding:NSUTF16LittleEndianStringEncoding];
const char* const bytes = data.bytes;
...