誰でもバイトを読み取る方法を提案できますかNSData
( read function in @interface
NSInputStream
:のようにNSStream
)
25904 次
5 に答える
26
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
}
于 2012-09-17T04:26:17.727 に答える
9
読み取りインターフェイスが必要な場合はNSInputStream
、オブジェクトから を作成することもできます。NSData
NSData *data = ...;
NSInputStream *readData = [[NSInputStream alloc] initWithData:data];
[readData open];
ただし、データの内容をinitWithData
コピーすることに注意してください。
于 2012-09-17T04:40:41.227 に答える
2
最も簡単な方法の 1 つは、NSData getBytes:range:を使用することです。
NSData *data = ...;
char buffer[numberOfBytes];
[data getBytes:buffer range:NSMakeRange(position, numberOfBytes)];
ここで、位置と長さは NSData 内の読み取り元の位置であり、長さは読み取りたいバイト数です。コピーする必要はありません。
于 2016-12-10T18:51:37.990 に答える