swift - 为什么我不能使用 Swift 4 加载 Collada 文件?
问题描述
我正在构建一个游戏引擎,并希望为 XML 格式的 Collada 文件实现我自己的解析器。我正在尝试创建一个 XMLParser 来为我执行此操作,但由于某种原因,在加载 .dae 扩展名时,没有任何效果。
加载文件示例:
//file = XMLParserDelegate
if let url = Bundle.main.url(forResource: colladaFileName, withExtension: "dae") {
if let parser = XMLParser.init(contentsOf: url) {
parser.delegate = self
parser.parse()
}
}
有趣的是,所有这些代码都被执行了。直到它调用函数“parseErrorOccurred”,我才能看到错误消息指出“文档为空”
func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error){
print(parseError) //result: Document is empty
}
这让我真正感到困惑!
当我将文件的扩展名更改为 .xml 并将函数更改为"withExtension: "xml"
代码编译正常时,没有错误,我可以看到所有文件数据。
我的目标是不必每次都将我的 .dae 文件格式更改为 .xml。我能做些什么来解决这个问题?
解决方案
推荐阅读
- flutter - 在颤动中将多个 ListView 滚动合并为一个
- python - 快速排序数组python
- macos - macOS 终端和 VS Code 给出的不同结果?
- curl - Next-Auth:getSession 返回 null
- pandas-profiling - 如何仅打印来自 pandas_profiling 的警告?
- javascript - 如何有条件地将只读属性设置为一行表
- node.js - HTTP请求节点js中的异步任务
- laravel - 使用 Vue 3 在 InertiaJS 中定义全局组件
- javascript - 使用钩子和承诺后如何从.json映射信息
- ios - 在队列中添加项目后,Google Cast 中的 skipPrevious 和 skipNext 按钮无效