方法1:
[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
如果编码data中含有非NSUTF8String,则返回nil。
方法2:
[NSString stringWithUTF8String:[data bytes]];
如果字符串中间含有Nul的,Nul后面在字符串将丢失。
具体原因为:
stringWithUTF8String: will assume that its input is a NUL-terminated string,
stringWithUTF8String 他假设的输入流是个以Nul 结束的字符串。
在字符串结尾系统自动加上的‘\0’,以让系统识别出一个字符串的结尾。