Как мне преобразовать значение NSString в NSData?

и для пользователя Mac OS вы можете использовать Network Link Conditioner, который можно загрузить из Apple. установите его как AP на mac, и любые его подразделения могут подключиться.

вы можете использовать инструменты open source с помощью facebook ATC http://facebook.github.io/augmented-traffic-control/

902
задан Leo Dabus 18 February 2017 в 03:55
поделиться

3 ответа

Сделайте:

NSData *data = [yourString dataUsingEncoding:NSUTF8StringEncoding];

, затем смело переходите к NSJSONSerialization:JSONObjectWithData.


Исправление к ответу относительно терминатора NULL

После комментариев, официальной документации и проверок этот ответ был обновлен относительно удаления предполагаемого терминатора NULL:

  1. Как задокументировано в dataUsingEncoding: :

    Возвращаемое значение

    Результат вызова dataUsingEncoding:allowLossyConversion: с NO как второй аргумент

  2. Как описано в getCString: maxLength: encoding: и cStringUsingEncoding: :

    отметим, что данные, возвращаемые dataUsingEncoding:allowLossyConversion:, не являются строгой C-строкой, поскольку они не имеют терминатора NULL

32
ответ дан Cœur 18 February 2017 в 03:55
поделиться

Objective-C:

NSString to NSData:

NSString* str= @"string";
NSData* data=[str dataUsingEncoding:NSUTF8StringEncoding];

NSData to NSString:

NSString* newStr = [[NSString alloc] initWithData:theData encoding:NSUTF8StringEncoding];

Swift:

Строка в данные:

var testString = "string"
var somedata = testString.data(using: String.Encoding.utf8)

Данные в строку:

var backToString = String(data: somedata!, encoding: String.Encoding.utf8) as String!
2
ответ дан Nick 18 February 2017 в 03:55
поделиться
NSString* str = @"teststring";
NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];
1413
ответ дан 22 November 2019 в 21:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: