NSData类型转换成NSString类型
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NSData类型转换成NSString类型相关的知识,希望对你有一定的参考价值。
参考技术A 刚开始在网上找到的方法如下:(1)NSData* data;
NSString* aStr= [NSString alloc] initWithData:dataencoding:NSASCIIStringEncoding];
可是这样的值为null。
后来又找了一个方法,
(2)专门写一个分类,转换出来有值,可是确实一堆乱码。
NSData *pushToken --> NSStrin *self.apnsToken
后来居然用很简单的方法就实现了,方法如下:
self.apnsToken= [NSStringstringWithFormat:@"%@",deviceToken];
不可思议吧。
下面附上从APNS上获得的token是NSData类型,要转成NSString类型的方法:
//获取token
- (void)application:(UIApplication*)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData*)deviceToken
// NSData类型转NSString类型,将device token转换为字符串
self.apnsToken= [NSStringstringWithFormat:@"%@",deviceToken];
NSLog(@"---NSData类型token转成NSString--%@",self.apnsToken);
self.apnsToken= [[self.apnsTokensubstringWithRange:NSMakeRange(0,72)]substringWithRange:NSMakeRange(1,71)];
//将deviceToken保存在NSUserDefaults
//保存device token令牌,并且去掉空格
[USERDEFAULTsetObject:[self.apnsTokenstringByReplacingOccurrencesOfString:@" "withString:@""]forKey:APNS_DeviceToken];
[USERDEFAULTsynchronize];
NSLog(@"---存储的APNStoken--%@", [USERDEFAULTobjectForKey:APNS_DeviceToken]);
NSString转换为UIImage
+(NSString *)makeImageToString:(UIImage *)image{
//第一步,先将image转换为data类型
NSData *imageData = UIImageJPEGRepresentation(image, 2.0);
//将NSData类型转换为NSString类型
NSString *string = [imageData base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength];
return string;
}
//NSString转换为UIImage
+(UIImage *)makeStringToImage:(NSString *)string{
//将字符串转换为data类型
NSData *strData = [[NSData alloc]initWithBase64EncodedString:string options:NSDataBase64DecodingIgnoreUnknownCharacters];
//将data转换为图片
UIImage *image = [UIImage imageWithData:strData];
return image;
}
以上是关于NSData类型转换成NSString类型的主要内容,如果未能解决你的问题,请参考以下文章