从NSMutableData中删除第一个字节

时间:2010-02-01 18:10:23

标签: iphone nsdata

NSMutableData *requestData = (NSMutableData*)[request responseData];

返回

“[{JSON_STRING}]”

所以我想删除“[”/“]”而不转换为NSString然后再转回NSData。最简单的方法是去除第一个和最后一个字节。

[requestData setLength:[requestData length]-1];删除最后一个字节。

如何删除第一个字节?我尝试了下面的解决方案,但不起作用..

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

2 个答案:

答案 0 :(得分:11)

以下是从NSMutableData中删除第一个字节的方法:

    NSRange range = NSMakeRange(0, 1);
[requestData replaceBytesInRange:range withBytes:NULL length:0];

答案 1 :(得分:9)

您可以使用

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

这应该照顾第一个和最后一个字符。