Objective-C Convert NSData to NSString

眉间皱痕 提交于 2019-12-01 17:52:36

问题


Here are the code I tried to convert NSData to NSString but the program return "Program received signal:SIGABRT".

NSString *string= [NSString stringWithUTF8String:[data bytes]];

OR

NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

Is there any other better way to do it?


回答1:


Here's a highly up-voted answer that shows how to do it. In a nutshell:

NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

The first idea looks like a fail because of sending [data bytes]. stringWithUTF8String isn't prepared for a void *. The second idea looks as if it should work, even with nil input.




回答2:


Use this code

NSString* myString;
myString = [[NSString alloc] initWithData:nsdata encoding:NSASCIIStringEncoding];

also see this tutorial..

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/Reference/NSString.html

:)




回答3:


Swift-3

let string = data.base64EncodedString()



来源:https://stackoverflow.com/questions/12906598/objective-c-convert-nsdata-to-nsstring

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!