Byte[] 数组转 Int

Byte[] Array to Int

我有一个长度为 128 的字节。我希望能够将这些字节放入单个 int(或字符串)中。

Byte *binaryKey = (Byte *)malloc(128);
// Adds 128 bytes to binaryKey
// eg. binaryKey = {202, 38, 255, 122, 65...}

然后我希望能够将 binaryKey 放入单个 int(如果不可能,甚至是字符串),如 2023825512265...

您可以像这样创建一个字符串:

NSMutableString *keyString = [[NSMutableString alloc] init];
for (int i = 0; i < 128; i++) {
    [keyString appendString:[NSString stringWithFormat:@"%hhu", binaryKey[i]]];
}

一个整数有 2、4 或 8 个字节的大小。 128 字节放不下。

为其创建字符串非常简单:

NSData *data = [NSData dataWithBytes:binaryKey length:128];
NSString *string = [data base64EncodedStringWithOptions:0];

但为什么不使用 NSData 的实例呢?