1

在 .NET Web 应用程序中,BitConverter 类用于将 Int32 转换为字节数组,如下所示:

byte[] intBuffer = BitConverter.GetBytes(12345);

现在我正试图将它读回到 iPhone 应用程序中。我在 NSData 中有长度为 4 的字节,但我不确定如何继续,因为我不知道如何在调试器控制台中查看 nsdata 的内容。

NSData *intBuffer = [NSData dataWithBytes:[buffer bytes] length:4];

如何将这 4 个字节转换为 Objective-C int?

编辑:

这是我想出的东西,它可能在正确的轨道上,也可能不在正确的轨道上。我不确定如何通过 NSData 中的索引获取单个字节值。

- (int) extractSize:(NSData *)data {
    NSMutableString *size = [NSMutableString stringWithCapacity:0];

    for (int i = [data length] - 1; i <= 0; i--) {
        //[size appendFormat:@"%x", data[i]];
    }

    return strtol([size UTF8String], nil, 16);
}
4

1 回答 1

0
int i;
[intBuffer getBytes:&i range:NSMakeRange(0, 4)];
于 2011-01-24T19:27:43.503 回答