将 UTF-8 编码的 NSData 转换为 NSString

问题描述:

我有来自 Windows 服务器的 UTF-8 编码的 NSData,我想将它转换为 iPhone 的 NSString.由于数据包含在两个平台上具有不同值的字符(如度数符号),如何将数据转换为字符串?

I have UTF-8 encoded NSData from windows server and I want to convert it to NSString for iPhone. Since data contains characters (like a degree symbol) which have different values on both platforms, how do I convert data to string?

如果数据不是空终止的,你应该使用 -initWithData:encoding:

If the data is not null-terminated, you should use -initWithData:encoding:

NSString* newStr = [[NSString alloc] initWithData:theData encoding:NSUTF8StringEncoding];

如果数据以空值结尾,则应改为使用 -stringWithUTF8String: 以避免在末尾出现额外的