1

データの最初のバイトに数値を含むファイルがあります。この場合、その数値は 32 です。16 進エディタを使用して、(16 進数で) 値が "20" であることを確認しました。これは 10 進数で 32 に相当します。

誰かがファイルからそれを読み取る方法の正しい方向に私を向けることができますか. 私は約6つの異なる方法を試しましたが、すべて失敗しました。

4

1 に答える 1

2

さまざまな方法がたくさん。ここに1つあります:

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 に答える