我正在尝试用 Swift 编写一个简单的 html 解析器。我通过桥头导入了 libxml。但现在我遇到了将 xml 文件放入 CString
的问题。 htmlReadMemory
方法需要一个 CString 作为第一个参数。我将 xml 文件加载到 NSData 中。传递 data.bytes
不起作用。我遇到了错误
找不到接受所提供参数的“__conversion”的重载。
在 obj-c 代码示例中,这种方式有效。为什么不在 Swift 中?任何想法,如何将 NSData 带入 CString?
最佳答案
您需要先将其转换为NSString
,然后您可以使用cString()
函数:
let xmlData = NSData()
let cocoaString = NSString(data: xmlData, encoding: NSUTF8StringEncoding)
let cString = cocoaString.cString()
关于swift - 来自 NSData 的 CString,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24147825/