gpt4 book ai didi

ios - 如何将 NSdata 转换为十六进制字符串?

转载 作者:可可西里 更新时间:2023-11-01 06:18:47 28 4
gpt4 key购买 nike

我尝试了将 NSData 转换为十六进制字符串值的以下代码,但都错了?

这里“结果”是我的 NSdata

我需要一个十六进制字符串作为输出,但我没有得到它

NSUInteger dataLength = [result length];
NSLog(@"%d",dataLength);
NSMutableString *string = [NSMutableString stringWithCapacity:dataLength*2];
const unsigned char *dataBytes = [result bytes];
for (NSInteger idx = 0; idx < dataLength; ++idx) { [string appendFormat:@"%02x", dataBytes[idx]];
}
NSLog(@"%@",string);

请问我该如何转换

更新:结果数据包含加密字符串。我想将其转换为十六进制值

最佳答案

这是我用于执行此操作的类别。这只是为您提供了十六进制数据的所有字符。没有换行符或任何东西。

@implementation NSData (NSData_Conversion)

#pragma mark - String Conversion
- (NSString *)hexadecimalString
{
/* Returns hexadecimal string of NSData. Empty string if data is empty. */

const unsigned char *dataBuffer = (const unsigned char *)[self bytes];

if (!dataBuffer)
{
return [NSString string];
}

NSUInteger dataLength = [self length];
NSMutableString *hexString = [NSMutableString stringWithCapacity:(dataLength * 2)];

for (int i = 0; i < dataLength; ++i)
{
[hexString appendFormat:@"%02x", (unsigned int)dataBuffer[i]];
}

return [NSString stringWithString:hexString];
}

关于ios - 如何将 NSdata 转换为十六进制字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16521164/

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