Actionscript 3 AIR/AS3:在不创建新文件块的情况下上载文件的一部分

Actionscript 3 AIR/AS3:在不创建新文件块的情况下上载文件的一部分,actionscript-3,file-upload,air,Actionscript 3,File Upload,Air,我目前正在构建一个AIR文件上传程序,用于处理多个非常大的文件。我已经尝试过不同的方法,将文件分成块(100mb)并逐步上传,这样我就可以防止上传/断开等失败 我已经设法将文件分解成更小的文件,然后将其写入光盘上的一个暂存区域,但是我发现实际写入文件的过程非常缓慢,占用了大量的处理能力。我的UI在编写时基本上停止了。更不用说我实际上将每个文件的本地磁盘空间增加了一倍 我使用的另一种方法是以100mb的块读入原始文件,并将数据存储在byteArray中,然后使用URLLoader类将其作为POST

我目前正在构建一个AIR文件上传程序,用于处理多个非常大的文件。我已经尝试过不同的方法,将文件分成块(100mb)并逐步上传,这样我就可以防止上传/断开等失败

我已经设法将文件分解成更小的文件,然后将其写入光盘上的一个暂存区域,但是我发现实际写入文件的过程非常缓慢,占用了大量的处理能力。我的UI在编写时基本上停止了。更不用说我实际上将每个文件的本地磁盘空间增加了一倍

我使用的另一种方法是以100mb的块读入原始文件,并将数据存储在byteArray中,然后使用URLLoader类将其作为POST数据上传。问题是,通过这种方式,我无法跟踪上载进度,因为ProgressEvent.progress对于POST请求无法正常工作

我想知道的是,是否有可能在不创建新文件的情况下读取100mb数据块中的文件并上传数据,但仍然使用FileReference.upload()方法来侦听该方法提供给我的所有可用事件。例如,创建一个由原始文件的0-100mb字节组成的文件(),然后对该新文件调用upload()

如果有帮助的话,我可以发布这两种方法的代码


干杯,非常感谢

我遇到了这样的问题,但我们正在用另一种方法解决它,我们决定编写一个套接字连接器,它将连接到服务器(例如FTP/HTTP)并将此写入套接字ByteArray,我们也在大小相同的块中进行了此操作,我们必须上载的最大文件是约150GB的BlueRay电影


因此,我希望您能从我的消息中获得一些有趣的想法,如果您愿意,我可以为您共享一些代码。

Hmm这是一个巧妙的解决方法,因为我可以看到Socket类发送ProgressEvent。如果你能分享一个例子,那就太好了,Cheersiam目前正在努力实现类似的目标。你能举个例子吗?