`
nianshi
  • 浏览: 418840 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

flex远程下载文件实例(进阶版)

    博客分类:
  • Flex
阅读更多

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

    <mx:Script>
   <![CDATA[
    private var downloadURL:URLRequest;
    private var netFile:FileReference;
  
    public function download(netFileURL:String):void{
     downloadURL = new URLRequest(netFileURL);
     netFile = new FileReference();
     configureListeners(netFile);
     netFile.download(downloadURL);
    }
  
    private function configureListeners(dispatcher:IEventDispatcher):void{
     dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
     dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);    //当由于安全错误导致下载失败时调度
     dispatcher.addEventListener(Event.SELECT, selectHandler);    //当用户从对话框中选择要下载的文件时调度
     dispatcher.addEventListener(Event.OPEN, openHandler);    // 当下载操作开始时调度
     dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);    //在文件下载操作期间进行定期调度
     dispatcher.addEventListener(Event.CANCEL, cancelHandler);     //当用户取消对话框时调度
     dispatcher.addEventListener(Event.COMPLETE, completeHandler);    //当文件下载操作成功完成时调度
    }
  
    private function selectHandler(event:Event):void {
     var file:FileReference = FileReference(event.target);
     trace("文件网络地址:" + downloadURL.url);
    }
  
    private function openHandler(event:Event):void {
       trace("openHandler: " + event);
    }
  
    private function progressHandler(event:ProgressEvent):void {
       var file:FileReference = FileReference(event.target);
       trace("文件本地化后的名称:" + file.name);
       trace("已下载字节数:" + event.bytesLoaded);
       trace("文件总字节数:" + event.bytesTotal);
       trace("文件下载到本地的日期:" + file.creationDate);    //Fri Jan 15 09:15:29 GMT+0800 2010
       trace("文件格式:" + file.type);
       trace("到本地时的文件大小:" + file.size);
    }
  
    private function cancelHandler(event:Event):void{
       trace("cancelHandler: " + event);
    }
  
    private function completeHandler(event:Event):void {
       trace("completeHandler: " + event);
    }
  
    private function ioErrorHandler(event:IOErrorEvent):void {
       trace("错误信息: " + event);
    }
  
    private function securityErrorHandler(event:SecurityErrorEvent):void {
       trace("securityErrorHandler: " + event);
    }
  
   ]]>
</mx:Script>

<mx:Button x="300" y="50" label="远程文件下载"
click="download('http://www.google.cn/intl/zh-CN/images/logo_cn.gif');"/>

</mx:Application>
分享到:
评论

相关推荐

    flex官方经典实例

    在这个名为"flex官方经典实例"的压缩包中,我们可以找到两个文件:readMe.txt和CairngormStore,它们分别代表了Flex开发中的不同方面。 readMe.txt通常是一个包含项目介绍、使用指南或作者信息的文本文件。在Flex...

    flex+hibernate 实例

    这通常涉及到创建服务,比如AMF(Action Message Format)服务,这是一种高效的数据交换格式,允许Flex客户端与服务器之间进行二进制数据交换,从而实现高效的远程调用。 在描述中提到这是“最经典的实例”,可能是...

    java flex开发项目配置实例

    【Java Flex 开发项目配置实例】教程旨在帮助开发者快速搭建基于Java和Flex的开发环境,实现两者间的交互。Flex是一种用于构建富互联网应用程序(RIA)的前端技术,而Java则作为后端处理业务逻辑和数据管理。以下是...

    flex远程过程调用部署文档

    Flex远程过程调用(RPC)部署涉及多个关键步骤和技术,主要目标是使Flex客户端能够与服务器端的Java代码进行通信。以下是对Flex RPC部署过程的详细说明: 1. **项目结构**: 首先,确保项目是按照Flex的要求组织的...

    flex操作数据的实例

    通过解压缩并导入提供的"Card"文件,你将能够看到一个具体的Flex项目,其中可能包含了如何在Flex中操作数据的示例代码。这个实例可能展示了如何创建一个卡片式的UI,每个卡片代表一项数据,用户可以通过点击或交互来...

    Flex FluorineFx Helloword 实例

    在这个实例中,我们将探讨如何利用FluorineFx库在Flex客户端与ASP.NET服务端之间实现远程调用,从而进行数据交互。 Flex是一种开源的、基于ActionScript的富互联网应用程序(RIA)开发框架,它允许开发者创建具有...

    flexAPI文件下载

    ### flexAPI文件下载知识点概述 #### 一、NewMapFlexAPI简介 NewMapFlexAPI是一款专为Flash设计的地图控件库,它允许开发者在网页、Flex或是AIR应用程序中嵌入交互式地图。此API提供了丰富的类和接口,帮助开发者...

    Flex+WebService开发实例

    《Flex与WebService开发实例详解》 Flex是一种基于Adobe Flash Platform的开源框架,主要用于构建富互联网应用程序(Rich Internet Applications,简称RIA)。它允许开发者创建交互性强、用户体验良好的动态Web应用...

    Flex语言开发介绍及实例

    在“Flex开发实例.pdf”这个文件中,可能包含了一些具体的代码示例和项目教程,指导读者如何创建Flex组件,处理事件,与服务器通信,以及如何利用Flex的图形和动画功能来增强用户体验。此外,可能还涵盖了Flex与不同...

    flex 教程 完整版 速学版

    Flex教程 完整版 速学版概述 Flex是一种基于Adobe Flash Player或Adobe AIR运行时的开放源代码框架,主要用于构建富互联网应用程序(RIA)。它提供了丰富的用户界面组件,能够创建交互性强、视觉效果出色的Web应用...

    flex 的cairngorm框架实例

    Flex Cairngorm框架实例详解 Flex,作为Adobe的开源富互联网应用(RIA)开发平台,以其强大的MXML和ActionScript支持,为开发者提供了构建交互性强、用户体验优良的应用程序的工具。而Cairngorm框架,则是针对Flex...

    flex访问remoteObject实例

    综上所述,"flex访问remoteObject实例"涉及到ActionScript编程、服务配置、远程方法调用、事件处理、数据交换以及错误和性能管理等多个方面。通过学习和实践这些知识点,开发者可以熟练地构建Flex应用程序,实现与...

    Flex Cairngorm之旅(小项目实例)

    Flex Cairngorm之旅,这是一次深入探讨Adobe Flex框架Cairngorm的实践教程,旨在通过一个小项目的实例来展示Cairngorm如何在实际开发中发挥作用。Cairngorm是面向服务架构(SOA)的轻量级MVC(Model-View-Controller...

    Flex与java交互 远程调用方式

    标题中的“Flex与Java交互 远程调用方式”指的是在Adobe Flex应用程序中与Java后端进行通信的技术。Flex是一种基于ActionScript的开源框架,用于构建富互联网应用程序(RIA),而Java是后端开发的常用语言。两者之间...

    flex 简单学习实例工程

    6. **服务调用**:Flex还支持与服务器端的数据交互,如通过HTTPService或WebService调用远程服务。在"demo_client"中,可能包含了如何获取和发送数据的示例,这对于构建动态交互的应用至关重要。 通过这个简单的...

    flex连接数据库实例

    本实例将详细介绍如何在Flex项目中连接数据库。 首先,我们需要了解Flex中的数据访问层。在Flex中,数据访问通常通过ADO.NET或AMF(Action Message Format)来实现。AMF是一种二进制格式,用于在服务器和客户端之间...

    flex-hessian-java实例.rar

    Flex-Hessian-Java实例是一个关于使用Flex客户端与Java服务器之间进行高效远程调用的实践案例。这个压缩包包含了实现这一技术所需的关键组件和文件。Flex是Adobe开发的一种开放源码的富互联网应用(RIA)开发框架,...

    Flex 在web中的应用实例

    2. 企业级应用:Flex可构建B/S架构的后台管理系统,提供丰富的用户界面和高效的远程数据访问。 3. 媒体播放:Flex支持音频、视频播放,常用于在线教育、视频分享平台。 4. 实时通信:通过WebSocket等技术,Flex能...

    上一篇的flex的远程对象调用,flex和spring集成分页的jar和截图

    标题中的“flex的远程对象调用”指的是在Adobe Flex应用程序中使用Remote Object(RO)服务进行远程通信的技术。Flex是一个开源的、基于ActionScript的框架,用于构建富互联网应用程序(RIA)。通过RO服务,Flex应用...

Global site tag (gtag.js) - Google Analytics