【发布时间】:2019-06-27 13:27:18
【问题描述】:
NSData 描述返回 nil 并使 NSData 对象为零。我的代码已经停止工作,我想让它再次工作。
如果我在Xcode 10 中编译我的代码,它将得到NSData 描述。但是如果我使用 Xcode 11 它会给我 nil 作为描述,它也会使 NSData nil 。我很困惑这是如何发生的。这是因为它仍然是测试版吗?这种情况在 beta 版本中正常吗?我只是想确保我的代码在新的 iOS 13 和 iPAD OS 13 出现之前仍然有效。
NSString *result = [[data description] stringByReplacingOccurrencesOfString:@" " withString:@""];
【问题讨论】:
-
你不应该使用
description,你应该正确地将数据转换为字符串。 -
不推荐使用
description,完全不用。 Apple 可以决定更改输出,明天它可能会打印<NSData: pointerAddress> <hexData>并破坏您的代码。而是看看如何将 NSData 转换为十六进制字符串:stackoverflow.com/questions/1305225/… 等。 -
我非常怀疑调用
[data description]会导致您的NSData对象为零。我会更多地研究你从哪里得到NSData,并在你创建NSData对象后立即设置一个断点,以确保它确实存在,如果它不调查对象的原因被设置为零。
标签: ios objective-c nsdata xcode11 ios13