【发布时间】:2015-07-24 17:45:13
【问题描述】:
我需要一些帮助。我有一个包含多个相同节点的 XML 账单。现在我循环遍历节点并相应地合并值。我向您展示的代码只是我需要帮助的部分。循环包含更多我将值合并在一起的地方。我需要帮助的是选择 MIN 和 MAX 日期/用法。由于我现在返回多个节点而不是一个节点,因此我将循环并合并数据。
- 因此,在它遍历节点后,我需要将 UsageMeterReadStartDate 设置为最早的 MIN 日期。数据类型字符串
- 与 UsageMeterReadStartUsage 相同。数据类型字符串
- 因此,在它遍历节点后,我需要将 UsageMeterReadStartDate 设置为最新的 MAX 日期。数据类型字符串
- 与 UsageMeterReadEndUsage 相同
这就是我所坚持的。我已经完成了我需要的所有其他数据的合并。我今年 18 岁,是一个相当新的程序员。我只是迷失在自己的逻辑中。任何指导都会帮助我。我相信最后两个 IF 语句是我需要帮助的地方,也是逻辑所在。
【问题讨论】:
-
您只是假设年份是当前年份吗?我没有看到你在任何地方解析它。您可以将月/日放入一个 DateTime 对象中,该对象允许您比较以前的对象。我看到的一个问题是您一遍又一遍地使用
saBillDetail变量。所以每次循环时,都会覆盖之前捕获的信息 -
@Thraka 我正在其他地方进行解析。我只需要例如将 saBillDetail.UsageMeterReadEndDate 设置为其循环通过的节点的最早日期。您可以在我发布的stackoverflow.com/questions/31164287/…stackoverflow.com/questions/31164287/… 的另一个问题中看到更多我的代码,感谢您的帮助
-
你的 xml 是什么样的? (特别是那些节点)
-
@Thraka 我为 UsageMeterReadStartDate 和 UsageMeterReadStartUsage 编辑并添加了部分 xml。 readStart 将返回 1 月 14 日,使用将返回 20891
-
如果 14 是一年,而不是我想象的一天,请再次检查我的答案