`
lxs647
  • 浏览: 523128 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Adobe AIR:解压Zip

 
阅读更多

下面是一段在Adobe air中解压zip的代码,是从一个老外的博客中转来的:

Today, I'm going to show you how you can use the nochump library to extract zip files with Adobe AIR.

The ZipFile class constructor takes an IDataStream object as the parameter.Here you can use a ByteArray or a FileStream object which contains the data of the zip file. The entries property of the ZipFile object contains all the files in the archive as ZipEntry objects. Here the directory itself(excluding the files inside it) also counts as a ZipEntry object, so make sure to check using the isDirectory property of the ZipEntry object. Finally get the data of a single file using zipFile.getInput() method.

Here's the code :

   import flash.filesystem.*;
   import flash.net.FileFilter;
   
   import nochump.util.zip.*;
   
   private var zipInput:File = new File();
   private var zipOutput:File = new File();
   private var zipFile:ZipFile;
   
   private function loadZIP():void
   {
    var filter:FileFilter = new FileFilter("ZIP","*.zip");
    zipInput.browseForOpen("Open ZIP file",[filter]);
    zipInput.addEventListener(Event.SELECT, onSelect);
   }
   
   private function onSelect(e:Event):void
   {
    var stream:FileStream = new FileStream();
    stream.open(zipInput,FileMode.READ);
    
    zipFile = new ZipFile(stream);
    extract.enabled = true;
   }
   
   private function extractZIP():void
   {
    zipOutput.browseForDirectory("Select Directory for extract");
    zipOutput.addEventListener(Event.SELECT, onDirSelect);
   }
   
   private function onDirSelect(e:Event):void
   {
    for(var i:uint = 0; i < zipFile.entries.length; i++)
    {
     var zipEntry:ZipEntry = zipFile.entries[i] as ZipEntry;
     // The class considers the folder itself (without the contents) as a ZipEntry.
     // So the code creates the subdirectories as expected.
     if(!zipEntry.isDirectory())
     {
      var targetDir:File = e.target as File;
      var entryFile:File = new File();
      entryFile = targetDir.resolvePath(zipEntry.name);
      var entry:FileStream = new FileStream();
      entry.open(entryFile, FileMode.WRITE);
      entry.writeBytes(zipFile.getInput(zipEntry));
      entry.close();
     }
    }
   }


You can download the project archive here. Happy experimenting

 

from: http://pradeek.blogspot.com/2009/05/extracting-zip-files-in-adobe-air-with.html

 

分享到:
评论

相关推荐

    macman_adobe air.zip

    解压“macman_adobe_air.zip”后,你会得到Markman的安装文件。双击运行,按照安装向导的步骤进行操作。安装完成后,可以通过Dock或启动台启动Markman,开始你的图片标注工作。 在使用Markman时,可以利用其简洁的...

    Flex Air压缩和读取zip文件

    这个主题主要涉及到Flex、Adobe AIR以及ZipArchive库的使用。让我们深入了解一下这些概念和技术。 首先,Flex是一种基于ActionScript 3的开放源代码编程框架,用于构建富互联网应用程序(RIA)。它允许开发者使用...

    新浪微博air v1.14.1.zip

    微博AIR是基于Adobe AIR平台的新浪微博...第二步:安装 微博AIR (1.51) 客户端(解压后运行.air文件)   常见问题:如果出现登录框不显示的问题,请用如下方法解决: 右键点托盘里的图标,选择"注销",重新登录即可。

    flex-air解压缩工具

    通过这些文件,我们可以推断,Flex Air解压缩工具可能采用ActionScript编写,使用了Flex或Air的API来实现对ZIP文件的读取和解压操作。ActionScript是一种面向对象的脚本语言,它在Air环境中可以直接访问文件系统,...

    air 打包成 exe

    随着技术的发展,很多开发者希望将基于Adobe AIR的应用程序(.air文件)打包为独立的.EXE可执行文件,以便用户能够更方便地进行安装。这种方式不仅提升了用户体验,同时也解决了因缺少AIR运行环境而导致的安装问题。...

    AS3版ZIP编解码类,支持中文文件名

    7. **文件I/O操作**:在AS3中,`flash.filesystem.File`和`flash.filesystem.FileStream`类用于读写本地文件,而处理ZIP文件时,还需要将文件流读入内存,然后通过ZIP库进行解压或压缩。 了解这些知识点后,开发者...

    flex zip压缩算法

    Flex的类库包括了处理二进制数据和网络通信的功能,使得在Flash Player或Adobe AIR环境中实现Zip压缩和解压缩成为可能。 4. **压缩算法**:Flex Zip算法可能采用了DEFLATE,这是ZIP文件格式常用的压缩算法。DEFLATE...

    markman文件

    描述中提到的"AdobeAIRInstaller.exe"是Adobe AIR框架的安装程序,这表明MarkMan可能是基于Adobe AIR平台开发的一个应用程序。在使用MarkMan之前,用户需要先安装Adobe AIR环境。 **Adobe AIR** Adobe AIR(Adobe ...

    kyo_XI.zip

    综上所述,"kyo_XI.zip"可能是一个包含了Adobe AIR应用程序及其相关配置和脚本的软件包。正确理解和使用这些文件需要对Adobe AIR、Windows批处理脚本以及可能的自定义配置格式有一定的了解。在操作时应遵循安全最佳...

    用AS3操作ZIP文件

    AS3是Adobe Flash Player和Adobe AIR应用程序的主要编程语言,它基于ECMAScript规范,提供了更强大的面向对象和类型检查功能。 首先,由于Flex标准库中没有内建的ZIP操作API,我们需要寻找第三方库来实现这一功能。...

    aszip源代码

    【flex】是Adobe开发的一种开放源代码的富互联网应用程序(RIA)框架,它基于ActionScript 3语言和Flash Player或Adobe AIR运行时。Flex提供了丰富的用户界面组件和数据绑定功能,使得开发复杂的Web应用变得更加容易...

    Actionsctipt zip和unzip

    通过这样的方式,开发者可以方便地在Adobe AIR应用程序中集成ZIP文件的处理功能,无论是为了打包数据还是方便用户下载和安装。记住,使用任何第三方库时,都要确保了解其许可证条款,以避免潜在的法律问题。同时,...

    flex 打包解压缩

    var zip:ZipArchive = new ZipArchive(); zip.addFile("path/to/your/file", "entryName"); ``` 这里的`entryName`是你在ZIP文件中为该文件设置的名称。如果要压缩多个文件,只需反复调用`addFile()`即可。 对于解...

    Adobe_Flash_CS5.5_CHN_Pack.zip

    1. **解压文件**:首先需要将"Adobe_Flash_CS5.5_CHN_Pack.zip"压缩包解压缩到本地磁盘。 2. **备份原文件**:为了防止意外,建议先备份原有的Flash安装目录中的相关文件。 3. **替换文件**:将解压后的汉化文件...

    Flex论坛FZip zip组件-flexcoders

    - **解压ZIP文件**:组件也支持从ZIP文件中提取单个文件或整个目录结构到指定的位置。 - **读取ZIP内容**:可以遍历ZIP文件中的所有条目,获取每个条目的信息,如文件名、大小、压缩比等。 - **写入和更新ZIP**:...

    Ext Designer Preview设计软件

    解压后,你会得到包含所有必要的文件和资源,包括Adobe AIR的安装程序和Ext Designer Preview的应用程序本身。 总的来说,Ext Designer Preview是一个强大的设计工具,它使Ext JS开发变得更加直观和高效。通过结合...

    as3corelib-.93.zip

    AS3CoreLib是一个开源的ActionScript 3库,主要用于增强Adobe Flash Player和Adobe AIR平台的功能。这个库由专业开发者James Ward创建并维护,为开发者提供了许多实用的工具和类,帮助他们更高效地开发富互联网应用...

    AVM2源码.zip

    这个"AVM2源码.zip"压缩包中的"AVM2源码.rar"可能是源代码的实际文件,解压后,你可以逐行阅读、调试和实验,进一步深化对AVM2的理解。请注意,由于源码通常包含许多内部实现细节,阅读和理解可能需要扎实的编程基础...

    as3解析excel2010

    总之,使用AS3和Adobe Air解析Excel 2007及2010文件需要理解Open XML格式,并借助第三方库来实现文件的解压和XML解析。通过编写代码,我们可以构建一个功能丰富的应用程序,能够读取Excel数据并将其无缝集成到我们的...

    iPadian.zip

    iPadian是一款专为Windows操作系统设计的iPad模拟器,它基于Adobe AIR技术构建,使得用户在没有实际iPad设备的情况下也能体验到iOS应用的使用。这款模拟器的独特之处在于它的便携性,作为一个绿色软件,iPadian无需...

Global site tag (gtag.js) - Google Analytics