在不知道编码类型的情况下将NSData转换为NSString

时间:2016-06-14 14:52:03

标签: ios objective-c nsstring nsdata

免责声明:

  • this上一个问题不包含有效答案。
  • this其他确实包含我用来转换它的技术,但没有回答我的问题。

问题:

我正在从与字符串对应的BLE特性中读取一些 NSData ,但我不知道它使用的是什么编码格式。

这是Xcode上调试器的视图:

enter image description here

如何将其转换为字符串?我想提取这个值: “< 951c7c1d e0fbdcc3 7b8b0b97 5c522036>”

我尝试了以下内容而没有明确的转换。然而,XCode似乎做了这个工作。的为什么吗

NSData * valueAsData = characteristic.value.mutableCopy;

NSString* newStr = [[NSString alloc] initWithData:characteristic.value encoding:NSUTF8StringEncoding];
NSString* newStr2 = [[NSString alloc] initWithData:characteristic.value encoding:NSASCIIStringEncoding];

1 个答案:

答案 0 :(得分:0)

获取与特征相关的描述符。其中一个应该是CBUUIDCharacteristicFormatString。这将指示presentation format,它将指示特征值的数据类型。