- 浏览: 547606 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (740)
- css (4)
- jquery (8)
- javascript (23)
- html (0)
- uml (0)
- 设计模式 (1)
- 开发工具 (14)
- json (4)
- struts 1.x (3)
- spring (3)
- hibernate (6)
- struts 2.x (17)
- JFreechart (0)
- j2se (48)
- jsp (9)
- flex (22)
- 找工作 (1)
- 技术杂谈 (18)
- 网络编程 (5)
- io流 (1)
- ORACLE (15)
- 报表 (3)
- extjs (11)
- jpbm (2)
- swing (5)
- jspereports (3)
- sql (1)
- linux (15)
- ps (1)
- storm (4)
- hbase (8)
- li (0)
- python (1)
- hive (3)
- 机器学习 (1)
- hdfs (1)
- elasticsearch (1)
- hadoop 2.2 (5)
- hadoop (1)
最新评论
-
Tristan_S:
这个有点意思
ASM -
starryskydog:
程序修改detail band部分的样式 如内容字体大小 ...
使用jasperReport实现动态表头 -
samwong:
Good, so usefule
使用YUI Compressor压缩CSS/JS -
gc715409742:
能够告诉我怎么在web项目中使用YUI Compressor? ...
使用YUI Compressor压缩CSS/JS -
JsonTeye:
您好! 我看你的代码,我现在也在做动态报表,实现功能由用户自己 ...
使用jasperreport动态生成pdf,excel,html
一、save() 方法简介
save()这个方法是flash10新增的,详细如下:
public function save(data:*, defaultFileName:String = null):void
示例:
var file:FileReference=new FileRefrence();
file.save("woko","1.txt");
语言版本: ActionScript 3.0
运行时版本: Flash Player 10, AIR 1.5
二、save() 方法使用须知
如果我们要用一些 flash player 10 上才提供的功能时,需要在项目属性里设置一下,否则会找不到此方法,比如flash保存文件或图片到本地的方法:FileReference.save()。flex builder3 默认要求flash player 最低要9,需要改成10.0,修改方法如下:
右键点击项目,在项目属性中找 flex compile, 修改 html wrapper,把 9.0.0 改为10.0.0
但由于我们并不需要 html wrapper 选项,所以待 eclipse 编译过一次之后又可以取消此选项而没有影响了。
三、save()方法的使用
save() 打开一个对话框,允许用户将文件保存到本地文件系统。虽然 Flash Player 没有限制可上载、下载、加载或保存的文件的大小,但是播放器正式支持的文件大小最大为 100 MB。
save() 方法首先打开一个操作系统对话框,让用户输入文件名并在本地计算机上选择用于保存文件的位置。当用户选择了位置并确认保存操作时(例如通过单击“保存 ”),保存过程即会开始。侦听器接收事件来指示保存操作的进度、成功或失败。为了在调用 save() 后确定对话框和保存操作的状态,ActionScript 代码必须对 cancel、open、progress 和 complete 等事件进行侦听。
在成功保存文件之后,将使用本地文件的属性填充 FileReference 对象的属性。如果保存成功,将调度 complete 事件。
每次只能执行一个 browse() 或 save() 会话(因为每次只能调用一个对话框)。
在 Flash Player 中,只有在响应用户事件(例如,在鼠标单击或按键事件的事件处理函数中)时才能成功调用此方法。否则,调用此方法将导致 Flash Player 引发 Error 异常。此限制不适用于应用程序沙箱中的 AIR 内容。
打开一个对话框,允许用户将文件保存到本地文件系统。虽然 Flash Player 没有限制可上载、下载、加载或保存的文件的大小,但是播放器正式支持的文件大小最大为 100 MB。
save() 方法首先打开一个操作系统对话框,让用户输入文件名并在本地计算机上选择用于保存文件的位置。当用户选择了位置并确认保存操作时(例如通过单击“保存”),保存过程即会开始。侦听器接收事件来指示保存操作的进度、成功或失败。为了在调用 save() 后确定对话框和保存操作的状态,ActionScript 代码必须对 cancel、open、progress 和 complete 等事件进行侦听。
FileReference.upload()、FileReference.download()、FileReference.load() 和 FileReference.save() 函数均不分块。这些函数在调用之后即返回,而不会等待文件传输完成。此外,如果 FileReference 对象离开作用域,则该对象中尚未完成的任何事务将在离开作用域时被取消。只要希望上载、下载、加载或保存能继续,就应确保将 FileReference 对象保留在作用域中。
在成功保存文件之后,将使用本地文件的属性填充 FileReference 对象的属性。如果保存成功,将调度 complete 事件。
每次只能执行一个 browse() 或 save() 会话(因为每次只能调用一个对话框)。
在 Flash Player 中,只有在响应用户事件(例如,在鼠标单击或按键事件的事件处理函数中)时才能成功调用此方法。否则,调用此方法将导致 Flash Player 引发 Error 异常。此限制不适用于应用程序沙箱中的 AIR 内容。
参数
data:* — 要保存的数据。数据可以采用几种格式之一,并将进行适当处理:
* 如果值为 null,则应用程序将引发 ArgumentError 异常。
* 如果值为 String,则将其保存为 UTF-8 文本文件。
* 如果值为 XML,则会以 XML 格式将其写入到文本文件,并保留所有格式设置。
* 如果值为 ByteArray 对象,则会将其逐字写入到数据文件。
* 如果值并非以上任何一种,则 save() 方法将调用对象的 toString() 方法,将数据转换为字符串,然后将数据保存为文本文件。如果该操作失败,则应用程序将引发 ArgumentError 异常。
defaultFileName:String (default = null) — 对话框中显示的要保存文件的默认文件名。此字符串不能包含以下字符:/ \ : * ? " < > | %
如果 File 对象调用此方法,则文件名将为 File 对象所引用文件的名称。(AIR File 类扩展了 FileReference 类。)
事件
open:Event — 当下载操作开始时调度。
progress:ProgressEvent — 在文件下载操作期间进行定期调度。
complete:Event — 当文件下载操作成功完成时调度。
cancel:Event — 当用户取消对话框时调度。
select:Event — 当用户从对话框中选择要下载的文件时调度。
ioError:IOErrorEvent — 读取或传输文件期间发生输入/输出错误时调度。
引发
IllegalOperationError — 在以下情况下引发:1) 另一个浏览会话正在进行中;每次仅能执行一个文件浏览会话。2) 要下载的文件的名称中包含禁止使用的字符。3) 用户 mms.cfg 文件中的某个设置禁止此操作。
ArgumentError — 如果 data 的类型不是 ByteArray,并且不具有 toString() 方法,则将引发异常。如果 data 的类型不是 XML,并且不具有 toXMLString() 方法,则将引发异常。
Error — 为了响应用户动作(如鼠标事件或按键事件),将不会调用此方法。
MemoryError — 如果 Flash Player 无法为该文件分配内存,则可能会发生此错误。文件可能太大,或者可用的内存可能太小。
发表评论
-
(原创)flex(AIR)远程文件下载实例(高级版)
2012-01-12 23:36 1128<?xml version="1.0 ... -
关于Flex安全沙箱问题的解决
2012-01-12 11:10 1013关于Flex安全沙箱问题的解决 前些天做了一个 ... -
flex as自定义组件
2012-01-10 10:20 1194Flex 3入门教程: 在Act ... -
flex上传和下载文件
2012-01-09 15:45 1133FileIO 示例说明了在 Flash Player 中执 ... -
flex通信篇——flash与js
2012-01-08 16:14 1444Flex与JS交互推荐用ExternalInterface,它 ... -
[心得教程] Flex与 JS 交互通信方法
2012-01-08 16:07 1386心得教程类型: navigateToURL( ... -
Flex中的文件上传与下载
2012-01-08 14:01 1299和传统的JSP一样,在 ... -
FileReference+HttpHandler实现文件上传/下载
2012-01-08 13:25 1237在Flex的应用开发中,同ASP.NET,JSP ... -
关于flex 4的新数据类型中英文对照
2010-08-31 08:34 965Flex 4 new data type:ArrayList ... -
Flex程序与html通信方法大全
2010-08-29 09:30 1073Flex通常作为一个web项目的一部分嵌入到一个web页中,因 ... -
flex图文混排
2010-08-29 09:29 2812由于我们项目需要在flex中实现图文混排的效果,在实现的过程中 ... -
mx:Module mx:XML mx:XMLList mx:XMLListCollection mx:Array mx:ArrayCollection比较
2010-08-23 08:38 984mx:Module 是模块化,好处是,预先不加载,用的时候才加 ... -
flex学习资料
2010-08-19 15:45 1022flex动态效果演示: http://www.efflex.o ... -
使用BlazeDS Java的数据对应表
2010-08-19 12:15 923使用BlazeDS Java的数据对应表 从Action ... -
通道端点配置1
2010-08-19 12:14 997通道端点配置 选择端点 BlazeDS提供了下列 ... -
blazeds学习笔记一整体认识
2010-08-19 12:13 1505blazeds学习笔记一整体认识 BlazeDS是一组服 ... -
后台主动推数据
2010-08-19 12:08 1219后台主动推数据 view sourceprint?1 Asyn ... -
Producer Consumer实例
2010-08-19 11:47 1300Producer Consumer实例 在上一篇文章(blaz ... -
Producer Consumer讲解
2010-08-19 11:46 1271blazeds学习笔记四Producer Consumer讲解 ... -
blazeds学习笔记
2010-08-19 11:39 1083blazeds学习笔记三Message?s ...
相关推荐
在选择文件后,可以调用`FileReference.size`属性来获取文件的大小,单位为字节。例如: ```actionscript private function fileSelected(event:Event):void { var fileReference:FileReference = FileReference...
2. 用户选择文件后,`FileReference`对象会触发`select`事件,此时可以通过`FileReference.name`获取选中文件的名称,`FileReference.size`获取文件大小。 3. 调用`FileReference.load()`方法读取文件数据到内存中。...
在文件上传过程中,我们可以将FileReference对象的data属性绑定到HTTPService的requestContent,然后调用send方法发起POST请求,将文件数据发送到服务器。 3. **MD5验证**:MD5(Message-Digest Algorithm 5)是一...
4. 对于下载,Flex客户端通过`FileReference.save()`方法触发下载,HTTPHandler读取服务器文件并设置HTTP响应的Content-Disposition头,指示浏览器保存文件。 通过这种方式,Flex和.NET可以实现无缝集成,提供用户...
当用户点击下载链接时,服务器返回一个包含文件内容的HTTP响应,Flex应用使用FileReference.load方法加载这个响应,然后调用save方法让用户保存到本地。 3. **在线浏览**:在线浏览文件涉及到多种技术。对于文本...
- **FileReference.save()**:使用`FileReference`的`save()`方法,指定文件名和保存路径,开始下载。同时,可以监听`download`事件来跟踪下载进度和状态。 - **安全限制**:需要注意的是,由于浏览器的安全策略,...
6. **安全限制**:需要注意的是,由于Flash Player的安全沙箱限制,只有在用户交互后(如点击按钮)才能使用FileReference保存文件,否则会触发安全错误。 综上所述,Flex中的图片保存涉及BitmapData、Matrix、编码...
在Flex中,使用FileReference类可以实现本地文件的保存和上传。 7. **错误处理**:在导出过程中可能会出现各种错误,比如网络问题、文件权限等。良好的错误处理机制能确保用户体验的顺畅。 下载并解压"Flex报表...
6. Flex接收到文件数据,显示下载进度或提示用户保存文件。 总结,这个项目结合了Flex的富客户端功能和Java的后端处理能力,实现了Web端的文件上传和下载。对于更复杂的应用场景,可能还需要考虑多文件上传、断点续...
`save`方法接收两个参数:一个是包含图片数据的字节数组,另一个是用户保存文件时显示的默认文件名。 描述中提到的“网上找到的,共享一下”可能是指有现成的示例代码。在提供的压缩包文件列表中,我们看到两个MXML...
fileReference.addEventListener(ProgressEvent.UPLOAD_PROGRESS, uploadProgress); fileReference.addEventListener(Event.COMPLETE, uploadComplete); fileReference.upload(new URLRequest(...
在Flex端,可能会使用Flex自带的FileReference类来处理文件选择和上传。FileReference允许用户从本地文件系统选择文件,并提供了上传到服务器的功能。在ASP.NET后端,通常会使用HttpPostedFileBase类接收上传文件,...
这通常涉及到PHP、ASP.NET、Java等后端技术,负责接收文件、保存到服务器磁盘或者数据库,并返回确认信息给Flex客户端。 6. **安全与优化**:多文件上传要考虑安全性问题,比如防止上传恶意文件、限制文件类型和...
7. **Saving Images**: 在客户端,可以使用FileReference类保存本地照片。用户可以触发保存对话框,选择保存位置并命名文件。而在服务器端,可能需要处理上传的图片,如调整尺寸、格式转换等。 8. **Security ...
在Flex中,这可以通过使用FileReference类来实现,FileReference支持多文件选择和批量上传功能。 标签“源码”表明提供了实现此功能的源代码,开发者可以查看、学习甚至修改这些代码以满足特定需求。而“工具”标签...
2. **FileReference对象**:在Flex中,FileReference对象允许用户选择本地文件,并提供了读取文件内容、显示对话框选择文件以及上传文件到服务器的方法。 3. **事件监听**:FileReference对象支持多个事件,如...
创建一个UI组件,如按钮,当用户点击时触发`FileReference.browse()`方法打开文件选择对话框,然后调用`FileReference.upload()`上传选定的文件。 ```actionscript private function handleUpload_click(event:...
3. **文件选择**:`FileReference.browse()`方法会弹出一个标准的文件选择对话框,让用户选择要上传的文件。用户选择文件后,`FileReference`对象会包含所选文件的信息。 4. **文件上传**:`FileReference.upload()...
4. **保存文件**:当文件下载完成后,我们可以调用FileReference的save()方法,让用户选择保存位置并保存文件。 5. **取消下载**:如果用户决定取消下载,我们可以调用FileReference的cancel()方法。 在提供的...