在Flash中部分加载的XML

时间:2009-02-02 10:41:55

标签: xml flash actionscript download

在Flash中,可以在XML文件加载时读取XML数据吗?即读取部分下载的XML字符串,因为其余的下载,所以我们可以尽快处理它。

  1. 您是否每次获得小块数据下载时都会触发事件?和URLLoader一样?
  2. 您是否可以访问原始字符串,因为无法解析部分XML?

3 个答案:

答案 0 :(得分:2)

我很确定你不能开箱即用,即使你找到了办法 - 也许通过调用php脚本来加载文件 - 我不太明白你会做什么使用它,因为您现在拥有一个非常好的XML格式,您需要尝试并优雅地进行解析。我无法想象这将是微不足道的。 如果你真的想要将数据分成几部分,那么将文件分解成更小但更完整的部分是完全可行的吗?

答案 1 :(得分:1)

您可以使用URLStream对象从URL加载数据并在下载时读取它。

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/URLStream.html

但是,您必须使用一些特殊的SAX /事件驱动的解析器,因为本机XML对象不能用于“部分”xml字符串。

答案 2 :(得分:0)

来自Adobe Flex语言参考:

  

请注意,对于URLLoader对象,在完全接收数据之前无法访问数据。

问题1的答案是,不,您无法访问仅部分下载的数据。

对于2,URLLoader不对加载的数据执行任何形式的解析,您可以通过加载器实例的data属性访问原始字节。如果您知道其XML,则可以将其转换为带有明确new XML(loader.data)调用的XML结构。

总之,如果你想部分下载,你必须编写自己的服务器端解决方案,将文件拆分成更小的块,然后单独下载这些块,就像Andrew建议的那样。