и для пользователя Mac OS вы можете использовать Network Link Conditioner, который можно загрузить из Apple. установите его как AP на mac, и любые его подразделения могут подключиться.
вы можете использовать инструменты open source с помощью facebook ATC http://facebook.github.io/augmented-traffic-control/
Сделайте:
NSData *data = [yourString dataUsingEncoding:NSUTF8StringEncoding];
, затем смело переходите к NSJSONSerialization:JSONObjectWithData
.
После комментариев, официальной документации и проверок этот ответ был обновлен относительно удаления предполагаемого терминатора NULL:
Как задокументировано в dataUsingEncoding: :
Возвращаемое значение
Результат вызова
dataUsingEncoding:allowLossyConversion:
с NO как второй аргумент
Как описано в getCString: maxLength: encoding: и cStringUsingEncoding: :
отметим, что данные, возвращаемые
dataUsingEncoding:allowLossyConversion:
, не являются строгой C-строкой, поскольку они не имеют терминатора NULL
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!
NSString* str = @"teststring";
NSData* data = [str dataUsingEncoding:NSUTF8StringEncoding];