【发布时间】:2020-02-03 15:43:49
【问题描述】:
我一直在环顾四周,虽然有几个选择,但没有一个真正适合我目前的问题。
我得到两个 XML 文件,File1 和 File2,它们具有“用户”节点,子节点详细说明姓名、年龄、地址等内容。从那里我需要创建第三个 XML File3,它专门包含在之间发生变化的字段两者同时保留“名称”节点以识别更改是由该用户完成的。
如果我得到:
File 1:
<users>
<user>
<name>Marco</name>
<height>1,76</height>
<address>C:/ Far-away 34</address>
<mail>marco@marco</mail>
</user>
</users>
File 2:
<users>
<user>
<name>Marco</name>
<height>1,80</height>
<address>C:/ Far-away 34</address>
<mail></mail>
</user>
</users>
它应该输出一个 XML:
File 3:
<users>
<user>
<name>Marco</name>
<height>1,80</height>
<mail></mail>
</user>
</users>
我的主要问题之一是除了“名称”之外,我没有被告知哪些节点将存在(或者它们是否有子节点)。
编辑:用户只出现一次,节点可以按任意顺序排列,节点数量不固定。
【问题讨论】:
-
您需要定义这需要多么智能。子元素可以按任何顺序排列吗?可以有多个名为 Marco 的用户吗?可以有多个名为“邮件”的子元素吗?等等。如果第二个文件中缺少一个元素,它是如何处理的?
-
需要更多示例数据才能正确执行此操作。过去做过类似的任务。我同意 Chuck 的观点,只是仅仅回答他的问题通常是不够的。看实际输入更好。
标签: c# xml xml-parsing