ios - 无法将 NSData 转换为 NSString

标签 ios objective-c nsstring nsdata

我有如下加密的文本:

NSData *data = [text dataUsingEncoding:NSUTF8StringEncoding];
NSError *error;
NSData *encryptedData = [RNEncryptor encryptData:data withSettings:kRNCryptorAES256Settings password:[loggedUser getKey]error:&error];

然后我试图将字符串转换为关闭并将其存储在某个地方。这就是我正在尝试的:

NSString *convertedString = [[NSString alloc] initWithData:encryptedData encoding:NSUTF8StringEncoding];

然而,字符串 convertedString 始终为 null/nil,即使调试器向我显示 encryptedData 始终包含数据。如何将其转换为字符串?此外,按照同样的思路,我如何将其转换回 NSData 以便稍后解密?

这是我尝试转换的 NSData 的示例输出:

Printing description of encryptedData: <0301ff17 956167db a88cdc14 7cab1a85 28ad01c9 78c5a843 ecf22404 9c2c6915 7681277b 6e1161d8 1dd1122b 29c65f76 8bf95652 791cf2b0 3231b7b6 dbd00cb6 56301058 bfdebd9c 5edfcfe2 bc21c4fc 707a>

最佳答案

你应该直接发送NSData。或使用 base64EncodedStringWithOptions: 对其进行 base64 编码

关于ios - 无法将 NSData 转换为 NSString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23554539/

相关文章:

objective-c - 如何在 Objective-C 中将 unichar 值转换为 NSString?

ios - 使样式为 .bordered 的 SwiftUI 按钮扩展到全宽

objective-c - 在哪里可以找到 iPad 示例代码

ios - 您可以异步分派(dispatch)非转义闭包函数吗?

ios - NSURL 错误代码 1022

iphone - 关于NSMutableArray添加NS​​Array问题

ios - 如何将我的设备 token (NSData) 转换为 NSString?

ios - 从 NSString 中删除所有非英文字符

android - 使用 PeerJS 的 WebRTC - 它可以在 Android 和 IOS 应用程序上运行吗

ios - settings.bundle xcode 6 中的子 Pane