我目前正在处理大量数据。我摄取了lloonngg NSData字节流,然后解析该数据。解析是微不足道的。但是,在解析时,我必须通过不太特别的簿记来模拟数据的消耗。这是我已实现的NData类别中的典型方法:

//抓取一个低端32位数字
-(uint32_t)getInt32OffsetIncrement:(NSUInteger *)offset {

uint32_t unused;
NSRange myRange = NSMakeRange(*offset, sizeof(unused));

[self getBytes:&unused range:myRange];

*offset += sizeof(unused);

return CFSwapInt32LittleToHost(unused);


}

如您所见,我检索数据,然后前进到NSRange“指针”进入数据流。完成后,我已经消耗了整个数据流。

我是否忽略了NSData上可以同时检索数据并沿数据流长度前进指针的任何方法?

干杯,
道格

最佳答案

我只是写了与此非常相似的代码。我不相信有任何内置的NSData方法可以提供帮助。看起来您已经作为NSData类别进行了此操作。我认为这是最好的选择,除非您想继承子类并将偏移量保留在成员中。

07-26 08:54
查看更多