2012-09-17 17 views

回答

7

你也可以如果您需要读取接口,请创建一个NSInputStream对象:

NSData *data = ...; 
NSInputStream *readData = [[NSInputStream alloc] initWithData:data]; 
[readData open]; 

但是,您应该知道initWithData拷贝了的数据内容。

20

How to read binary bytes in NSData?”可以帮助你:

NSString *path = @"…put the path to your file here…"; 
NSData * fileData = [NSData dataWithContentsOfFile: path]; 
const char* fileBytes = (const char*)[fileData bytes]; 
NSUInteger length = [fileData length]; 
NSUInteger index; 

for (index = 0; index<length; index++) 
{ 
    char aByte = fileBytes[index]; 
    //Do something with each byte 
} 
0

最简单的方法之一是使用NSData getBytes。

NSData *data = ...; 
char buffer[numberOfBytes]; 
[NSData getBytes:buffer range:NSMakeRange(position, numberOfBytes)]; 

其中位置和长度是您希望从NSData读取的位置,长度是您想要读取的字节数。无需复制。