我需要将以下类型的 XML 解析为 Swift 对象:
<grandparent>
<parent_1 attr1="a">
<child_1 attr1="b"/>
<child_2 attr1="c"/>
</parent_1>
<parent_2 attr1="a">
<child_1 attr1="b"/>
<child_2 attr1="c"/>
</parent_2>
<parent_3 attr1="a">
<child_1 attr1="b"/>
<child_2 attr1="c"/>
</parent_3>
</grandparent>
每个父节点都是可选的,但是它们在上面定义的任何顺序都必须保留在最终的 Swift 对象中——在本例中是一个父节点为 1、2、3 的数组(如果它们都存在的话)。
我不清楚如何使用 XMLMapper 执行此操作。有人有什么建议吗?
最佳答案
您需要定义一个新标签:
<parents>
<parent id=1>...
<parent id=2>..,
</parents>
设置一个id属性。
您将获得一个带有父子元素的父元素。
按id排序数组:
array.sort(by: { $0.id < $1.id })
关于swift - 如何处理具有可选节点的 XML 文档,其中节点序列很重要,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54154668/