在Swift中将NSMutableData转换为NSData

6

我有一个返回NSMutableData的方法。我需要将此NSMutableData传递给另一个方法,但该方法只接受NSData类型。我正在尝试查找任何将NSMutableData转换为NSData的方法/解决方案。但是还没有成功。

在Objective C中,可以像这样完成: NSData * immutableData = [NSData dataWithData:mutableData];

我不确定如何在Swift中完成?有人能帮助我吗?

1个回答

11

只需将 NSMutableData 传递给任何期望 NSData 的方法即可。由于它是子类,所以可以正常工作。

但如果您真的想要进行转换,只需执行以下操作(Swift 3):

let data = someNSMutableDataVariable.copy() as! NSData
或者
let data = NSData(data: someNSMutableDataVariable as Data)

更新代码使用Data替代NSMutableDataNSData也许是有意义的。这就像使用String替代NSStringNSMutableString一样。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接