Iphone 是否将哈希转换为NSString?
使用EvernoteAPI,我有一个对象,它有一个名为Iphone 是否将哈希转换为NSString?,iphone,ios,objective-c,cocoa-touch,nsstring,Iphone,Ios,Objective C,Cocoa Touch,Nsstring,使用EvernoteAPI,我有一个对象,它有一个名为hash的整数属性。对于我正在查看的特定对象,这等于: <f5b5444b 33e740b7 f9d49a3b ddb6a39c> 给我这个: 530049088 如何将哈希值正确地转换为NSString?当您看到输出为“”的内容时,它是记录NSData对象(NSLog(@“%@”,myDataObject);)的结果。所以我相信你拥有的不是一个nsuiger,而是一个NSData*对象 没有用于在字符串和数据之间转换的内置方
hash
的整数属性。对于我正在查看的特定对象,这等于:
<f5b5444b 33e740b7 f9d49a3b ddb6a39c>
给我这个:
530049088
如何将哈希值正确地转换为NSString?当您看到输出为“”的内容时,它是记录NSData对象(
NSLog(@“%@”,myDataObject);
)的结果。所以我相信你拥有的不是一个nsuiger
,而是一个NSData*
对象
没有用于在字符串和数据之间转换的内置方法,您需要在代码中进行转换:
- (NSString *)dataToString:(NSData *)data
{
NSUInteger len = [data length];
NSMutableString *str = [NSMutableString stringWithCapacity:len*2];
const uint8_t *bptr = [data bytes];
while(len--) [str appendFormat:@"%02.2x", *bptr++];
return str;
}
如果这样做有效,您可以根据需要编写自己的stringToData方法,与上述方法相反。当您看到输出为“”时,它是记录NSData对象的结果(
NSLog(@“%@”,myDataObject);
)。所以我相信你拥有的不是一个nsuiger
,而是一个NSData*
对象
没有用于在字符串和数据之间转换的内置方法,您需要在代码中进行转换:
- (NSString *)dataToString:(NSData *)data
{
NSUInteger len = [data length];
NSMutableString *str = [NSMutableString stringWithCapacity:len*2];
const uint8_t *bptr = [data bytes];
while(len--) [str appendFormat:@"%02.2x", *bptr++];
return str;
}
如果这样做有效,您可以根据需要编写自己的stringToData方法,与上述方法相反。eeeeuuuughhh。。。您使用的是128位机器吗?或者一个
NSInteger
怎么能占用16个字节?你想要这个:?@Vin看起来是这样的。剩下的问题是它是一个整数,我所拥有的。如何将其转换为const void*
?noteResource
是一个NSData
对象,而noteResource.hash
是一些散列值(整数)。“将哈希值正确转换为NSString”是什么意思?为什么要转换为常量void*?你希望得到什么结果?嗯。。。您使用的是128位机器吗?或者一个NSInteger
怎么能占用16个字节?你想要这个:?@Vin看起来是这样的。剩下的问题是它是一个整数,我所拥有的。如何将其转换为const void*
?noteResource
是一个NSData
对象,而noteResource.hash
是一些散列值(整数)。“将哈希值正确转换为NSString”是什么意思?为什么要转换为常量void*?你期望得到什么结果?