在我的项目中,我使用3DES加密算法加密一些数据(字符串)。我传递给加密函数的字符串返回一个NSData对象。
现在我想将NSData转换为NSString,以便我可以将该字符串发送到服务器。
所以我用这段代码将NSData转换为NSString
NSString *stringCreated = [[NSString alloc] initWithData:encryptedData encoding:NSASCIIStringEncoding];
但是当我打印这个字符串时,它会在控制台上打印很少的字符。我认为很少有字符会产生一个“\ 0”序列,因为它只打印字符串到该字符。
我尝试使用NSUTF8StringEncoding
对数据进行编码,但它返回我(null)。
我想将完整的字符串发送到服务器,现在该怎么办?
答案 0 :(得分:3)
这不起作用,因为加密字符串是二进制数据。如果您需要使用文本表示,请将其转换为Base64。
这里描述了将NSData转换为NSString:Converting NSData to base64