0

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

  1. 您是否收到每次下载小块数据时都会触发的事件?像 URLLoader 一样?
  2. 由于无法解析部分 XML ,您是否可以访问原始字符串?
4

3 回答 3

2

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

于 2009-02-02T11:09:04.397 回答
1

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

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

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

于 2009-02-17T01:54:05.157 回答
0

来自 Adob​​e Flex 语言参考:

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

所以问题 1 的答案是不,您不能访问仅部分下载的数据。

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

总之,如果你想要部分下载,你必须编写自己的服务器端解决方案,将文件分成更小的块,并按照 Andrew 的建议单独下载这些块。

于 2009-02-02T13:21:38.027 回答