Objective c iOS:检测NSData的正确编码

Objective c iOS:检测NSData的正确编码,objective-c,ios,nsstring,nsdata,nsstringencoding,Objective C,Ios,Nsstring,Nsdata,Nsstringencoding,我有一个表示NSString对象的NSData对象。我使用-[NSString initWithData:encoding:][/code>获取字符串。现在的问题是如何知道正确的编码类型 谢谢 编辑: 我测试并发现: 假设NSData是用A编码的,我尝试使用编码B来创建NSString。有时字符串是nil,但字符串不能是nil,这是一个混乱的代码。因此,我无法通过测试每种编码类型来获得正确的字符串。如果数据来自文件,您可以尝试+[nsstringwithcontentsoffile:usedEn

我有一个表示
NSString
对象的
NSData
对象。我使用
-[NSString initWithData:encoding:][/code>获取字符串。现在的问题是如何知道正确的编码类型

谢谢

编辑: 我测试并发现:
假设
NSData
是用A编码的,我尝试使用编码B来创建
NSString
。有时字符串是nil,但字符串不能是nil,这是一个混乱的代码。因此,我无法通过测试每种编码类型来获得正确的字符串。

如果数据来自文件,您可以尝试
+[nsstringwithcontentsoffile:usedEncoding:error:
。但该方法似乎只尝试了一些编码。该库支持更多编码