5

这是我尝试将 NSData 转换为 NSString 的代码,但程序返回“程序接收到的信号:SIGABRT”。

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

或者

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

还有其他更好的方法吗?

4

3 回答 3

7

这是一个高度投票的答案,显示了如何做到这一点。简而言之:

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

由于发送,第一个想法看起来像失败了[data bytes]。stringWithUTF8String 没有为 void * 做好准备。第二个想法看起来应该可行,即使输入为零。

于 2012-10-16T02:37:45.340 回答
3

使用此代码

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

另请参阅本教程..

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

:)

于 2012-10-16T04:34:46.733 回答
0

斯威夫特-3

在此处输入图像描述

让字符串 = data.base64EncodedString()

于 2016-12-01T12:41:47.620 回答