从文件IOS读取整数

时间:2013-06-25 23:44:59

标签: ios objective-c file-io binary hex

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

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

1 个答案:

答案 0 :(得分: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]);
}