AS3和XML按时间过滤

时间:2015-11-10 14:52:01

标签: xml actionscript-3 flash xml-parsing flash-cs6

我有一些XML,我正在使用AS3进入闪存。

这是加载到flash中的XML:

               <Flights>
  <flight>
    <number>GS1234</number>
    <date>10/11/2015</date>
    <time>1440</time>
  </flight>
  <flight>
    <number>TD1234</number>
    <date>10/11/2015</date>
    <time>1450</time>
  </flight>
  <flight>
    <number>DDS342</number>
    <date>11/11/2015</date>
    <time>1540</time>
  </flight>
  <flight>
    <number>EJ8888</number>
    <date>11/11/2015</date>
    <time>1550</time>
  </flight>
  <flight>
    <number>DEV666</number>
    <date>12/11/2015</date>
    <time>1600</time>
  </flight>
</Flights>

我需要做的是按照时间过滤这个,比给定时间提前一小时。

因此,如果我输入时间14:20,它将返回14:20和15:20时间范围内的所有航班。

这可能比将所有内容放入数组并循环播放更容易吗?

1 个答案:

答案 0 :(得分:4)

您不必转换为数组。您可以使用e4x filtering,因为您的时间格式化为数字,所以它是一个简单的数字比较:

var departing:XMLList = xml.flight.(time > 1420 && time < 1520);

给你:

<flight>
  <number>GS1234</number>
  <date>10/11/2015</date>
  <time>1440</time>     </flight>
 <flight>
  <number>TD1234</number>
  <date>10/11/2015</date>
  <time>1450</time>
</flight>