Удалить первый байт из NSMutableData - PullRequest
2 голосов
/ 01 февраля 2010
NSMutableData *requestData = (NSMutableData*)[request responseData];

возвращает

"[{JSON_STRING}]"

поэтому я хочу удалить "[" / "]" без преобразования в NSString и затем обратно в NSData. Самый простой способ сделать это - удалить первый и последний байт.

[requestData setLength:[requestData length]-1]; удаляет последний байт.

Как убрать первый байт? Я попробовал решение ниже, но не работает ..

NSRange range = {0, 1};
[requestData resetBytesInRange:range];

Ответы [ 2 ]

11 голосов
/ 02 июня 2010

Вот как вы удаляете первый байт из NSMutableData:

    NSRange range = NSMakeRange(0, 1);
[requestData replaceBytesInRange:range withBytes:NULL length:0];
9 голосов
/ 01 февраля 2010

Вы можете использовать

NSRange range = NSMakeRange(1, [requestData length] - 2);
NSData *refinedData = [requestData subdataWithRange:range];

Это должно заботиться как о первом и последнем символе.

...