【发布时间】:2012-10-19 05:54:05
【问题描述】:
我正在尝试从通过网络接收到的字节创建一个字符串。我得到的 NSString 总是一个空的。
if (stringLength > 0) {
NSData *bytes = [[NSData alloc] initWithBytes:data+1 length:stringLength];
result = [[NSString alloc] initWithData:bytes encoding:NSUTF8StringEncoding];
//result = [[NSString alloc] initWithBytes:data+1 length:stringLength encoding:NSASCIIStringEncoding];
}
正如我所说,我得到一个空的 NSString。该字符串是一个 base64 编码值,因此它应该是有效的 utf-8,因为它只包含 ascii 符号。
【问题讨论】:
-
该代码对我来说看起来不错(如果您不使用 ARC,则会出现内存泄漏)。问题一定出在其他地方。
-
在创建
NSData对象之前NSLog("%@", data);会发生什么?那它是空的吗?
标签: objective-c cocoa