1

我有一个文件,在数据的第一个字节中包含一个数字。在这种情况下,这个数字是 32。我使用十六进制编辑器来确认(十六进制)该值是“20”,它等于十进制的 32。

有人可以指出我如何从文件中读取它的正确方向。我尝试了大约 6 种不同的方法,但都失败了。

4

1 回答 1

2

很多不同的方式。这是一个:

NSData *data = [NSData dataWithContentsOfFile:filename];
if ([data length] > 0)
{
    const uint8_t *bytes = (const uint8_t *)[data bytes];
    uint8_t byte = bytes[0];
    NSLog(@"%d", byte);
}

或其他:

NSInputStream *stream = [NSInputStream inputStreamWithFileAtPath:filename];
[stream open];
NSInteger bufferLen = 1;
uint8_t buffer[bufferLen];
NSInteger count = [stream read:buffer maxLength:bufferLen];
[stream close];
if (count > 0)
{
    NSLog(@"%d", buffer[0]);
}
于 2013-06-25T23:51:08.713 回答