gpt4 book ai didi

cocoa - 获取十六进制格式的 NSData

转载 作者:行者123 更新时间:2023-12-03 17:05:38 24 4
gpt4 key购买 nike

我有一个函数返回 NSData,其中包含十六进制:例如:

NSData *temp = <000b4631 32202835 2047487a 2901088c 129824b0 48606c03 01a1070a >

现在这些是十六进制值,我需要将它们打印出来。

x = 00
y = 0b
z = 46 31

获取它们的理想方法是将它们转换为 char 数组,这样我就可以将一些结构映射/类型转换到数组并读出我想要的内容。我如何将此 NSData 转换为 char 数组?

还有其他建议/最佳实践吗?

最佳答案

我在 NSData 上有一个类别可以执行此操作 https://github.com/Machx/Zangetsu/blob/master/Source/NSDataAdditions.m

-(NSString *)cw_hexString {
NSUInteger capacity = [self length] * 2;
NSMutableString *stringBuffer = [NSMutableString stringWithCapacity:capacity];
const unsigned char *dataBuffer = [self bytes];

for (NSUInteger i = 0; i < [self length]; ++i) {
[stringBuffer appendFormat:@"%02X ",(NSUInteger)dataBuffer[i]];
}
if (stringBuffer) {
return stringBuffer;
}
return nil;
}

关于cocoa - 获取十六进制格式的 NSData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9105454/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com