zoukankan      html  css  js  c++  java
  • flash player 10 终于可以写文件了

    FileReference

     
    save () 方法  
    public function save(data:*, defaultFileName:String = null):void
    语言版本:  ActionScript 3.0
    运行时版本:  Flash Player 10, AIR 1.5

    打开一个对话框,允许用户将文件保存到本地文件系统。虽然 Flash Player 没有限制可上载、下载、加载或保存的文件的大小,但是播放器正式支持的文件大小最大为 100 MB。

    save() 方法首先打开一个操作系统对话框,让用户输入文件名并在本地计算机上选择用于保存文件的位置。当用户选择了位置并确认保存操作时(例如通过单击“保存”),保存过程即会开始。侦听器接收事件来指示保存操作的进度、成功或失败。为了在调用 save() 后确定对话框和保存操作的状态,ActionScript 代码必须对 cancelopenprogresscomplete 等事件进行侦听。

    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 无法为该文件分配内存,则可能会发生此错误。文件可能太大,或者可用的内存可能太小
  • 相关阅读:
    Leetcode 92. Reverse Linked List II
    Leetcode 206. Reverse Linked List
    Leetcode 763. Partition Labels
    Leetcode 746. Min Cost Climbing Stairs
    Leetcode 759. Employee Free Time
    Leetcode 763. Partition Labels
    搭建数据仓库第09篇:物理建模
    Python进阶篇:Socket多线程
    Python进阶篇:文件系统的操作
    搭建数据仓库第08篇:逻辑建模–5–维度建模核心之一致性维度2
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/1615550.html
Copyright © 2011-2022 走看看