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

flex有关本地目录操作实例

    博客分类:
  • Flex
阅读更多

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/halo">

<fx:Script>
   <![CDATA[
    import flash.filesystem.File;
   
    private function myURL01():void{
     /*file对象既可以代表一个指定目录,也可以代表一个指定文件。*/
     //1、指定一个绝对路径
     var dirFile:File = new File("D:/music/man");
     trace("0、" + dirFile.nativePath);
     //2、获得系统用户文档目录和当前项目所在目录
     trace("1、" + File.userDirectory.nativePath);    //C:\Documents and Settings\a
     trace("2、" + File.documentsDirectory.nativePath);    //2、C:\Documents and Settings\a\My Documents
     trace("3、" + File.desktopDirectory.nativePath);    //3、C:\Documents and Settings\a\桌面
     //能兼容(即通用于)各种操作系统,此种方式名为flex的存储路径方式
     trace("4、" + File.applicationStorageDirectory.resolvePath("mapMarker/").url);    //app-storage:/mapMarker
     trace("5、" + File.applicationStorageDirectory.nativePath);    //4、C:\Documents and Settings\a\Application Data\fileUrl\Local Store
     trace("6、" + thisProURL(File.applicationDirectory.nativePath));    //(自定义)5、C:\Documents and Settings\a\Adobe Flash Builder Beta 2\fileUrl
     trace("7、" + File.applicationDirectory.nativePath);    //6、C:\Documents and Settings\a\Adobe Flash Builder Beta 2\fileUrl\bin-debug
     //3、追加及延伸指定目录
     trace("8、" + File.userDirectory.resolvePath("My Music").nativePath);    //7、C:\Documents and Settings\a\My Music
     trace("---------------------------------------------------------------------");
    }
   
    private function thisProURL(strURL:String):String{
     var str:String = "";
     var len:int = strURL.split("\\").length;
     for(var i:int = 0; i < len - 1; i++){
      if(i != len - 2){
       str += strURL.split("\\")[i] + "\\";
      }else{
       str = str + strURL.split("\\")[len - 2];
      }
     }
     return str;
    }
   
    //4、遍历一个指定的目录
    public function bianliFile(dirFile:File):void{
     if(dirFile.exists){    //指定的file对象是否存在
      if(dirFile.isDirectory){    //指定的file对象是否是目录
       var sonFileArray:Array = dirFile.getDirectoryListing();
       var sonsLength:uint = sonFileArray.length;
       for(var i:int = 0; i < sonsLength; i++){
        if(sonFileArray[i].isDirectory){    //是否为目录
         trace("是目录---" + sonFileArray[i].nativePath);
        }else{    //是文件
         trace("是文件---" + sonFileArray[i].nativePath);
        }
       }
       trace("---------------------------------------------------------------------");
      }else{
       trace("指定的对象不是目录");
      }
     }else{
      trace("指定的对象目录不存在");
     }
    }
   
    //5、获得指定目录的详细信息
    public function infoDirFile(dirFile:File):void{
     if(dirFile.exists){    //指定的file对象是否存在
      if(dirFile.isDirectory){    //指定的file对象是否是目录
       trace("目录创建时间:" + dirFile.creationDate.fullYear + "年"
        + (dirFile.creationDate.month + 1) + "月" + dirFile.creationDate.date + "日"
        + dirFile.creationDate.hours + "时" + dirFile.creationDate.minutes + "分" + dirFile.creationDate.seconds + "秒");
       trace("目录创建者:" + dirFile.creator);
       trace("目录扩展名:" + dirFile.extension);
       trace("目录是否为隐藏状态:" + dirFile.isHidden);
       trace("目录的名字:" + dirFile.name);
       trace("目录的绝对路径:" + dirFile.nativePath);
       trace("目录的大小:" + dirFile.size);
       trace("---------------------------------------------------------------------");
      }else{
       trace("指定的对象不是目录");
      }
     }else{
      trace("指定的对象目录不存在");
     }
    }
   
    //6、在指定的目录下创建一个目录,如果目录已经存在则就不创建了,代码不执行了
    public function createDirFile(dirFile:File, newDirName:String):void{
     var sonDirFile:File = dirFile.resolvePath(newDirName);
     sonDirFile.createDirectory();
    }
   
    //7、在指定目录下删除一个目录
    public function deleteDirFile(dirFile:File, delDirName:String):void{
     var sonDirFile:File = dirFile.resolvePath(delDirName);
     sonDirFile.moveToTrash();    //移动到回收站
     //     sonDirFile.deleteFile();     //彻底删除文件,目前存在问题
    }
   
    //8、把指定目录从一个指定目录剪切到另外一个指定目录
    public function moveDirFile(fromDirFile:File, toDirFile:File, moveDirName:String):void{
     //     var moveDirFile:File = fromDirFile.resolvePath(moveDirName);
     //     moveDirFile.moveTo(toDirFile, false);
    }
   
    //9、把指定目录从一个指定目录复制到另外一个指定目录
    public function copyDirFile(fromDirFile:File, toDirFile:File, copyDirName:String):void{
     try{
      var copyDirFile:File = fromDirFile.resolvePath(copyDirName);
      copyDirFile.copyTo(toDirFile, true);
     }catch(error:Error){
      trace(error.message);
     }
    }
   
   
   ]]>
</fx:Script>

<mx:Button id="but01ID" x="100" y="20" label="获取系统目录" click="myURL01();"/>
<mx:Button id="but02ID" x="100" y="60" label="遍历一个指定的目录" click="bianliFile(File.userDirectory);"/>
<mx:Button id="but03ID" x="100" y="100" label="获得一个指定的目录的详细信息" click="infoDirFile(File.userDirectory);"/>
<mx:Button id="but04ID" x="100" y="140" label="在指定的目录下创建一个目录" click="createDirFile(File.userDirectory, '薛冲');"/>
<mx:Button id="but05ID" x="100" y="180" label="在指定的目录下删除一个目录" click="deleteDirFile(File.userDirectory, '对对对');"/>
<mx:Button id="but06ID" x="100" y="220" label="把指定目录从一个指定目录剪切到另外一个指定目录"
      click="moveDirFile(File.userDirectory, File.documentsDirectory, 'sss');"/>
<mx:Button id="but07ID" x="100" y="260" label="把指定目录从一个指定目录复制到另外一个指定目录"
      click="copyDirFile(File.userDirectory, File.documentsDirectory, 'sss');"/>

<fx:Declarations>
   <!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>

</s:WindowedApplication>

分享到:
评论

相关推荐

    flex操作数据库, flex操作本地sql数据库

    在Flex中,可以利用各种技术来实现与数据库的交互,包括操作本地SQL数据库。本篇文章将详细探讨Flex如何操作数据库,特别是针对本地SQL数据库的处理。 一、Flex与数据库连接 在Flex中,数据访问通常通过ADO.NET、...

    Flex air sqlite操作实例

    Flex air 本地程序实例 使用sqlite 学员信息简单查询 本程序分三层 由不同的as(ActionScript)来实现,具体: ConnDb.as 数据助手类,专门用来封装SQLITE的操作,其中也包括了:创建数据库,数据表的方法. Student_...

    flex+cairngorm+java 实例

    Flex Cairngorm Java实例是一个基于Adobe Flex的项目,它整合了Cairngorm框架和Java后端服务,用于构建高效且可扩展的 Rich Internet Applications (RIA)。Flex是一种开源的、基于ActionScript的开发工具,用于创建...

    flex4 简单增删改实例

    本实例将探讨如何在Flex 4中实现简单的数据添加、删除和修改功能。 首先,我们需要了解Flex 4中的数据模型。在Flex中,数据通常与视图组件进行绑定,这可以通过MXML的data属性或ActionScript的setData方法完成。...

    Flex+Java登录实例完整框架 基于Flex框架

    Flex+Java登录实例完整框架是将 Adobe Flex 与 Java 技术结合,构建的一个功能完善的登录系统。这个框架主要用于创建富互联网应用程序(Rich Internet Applications,RIA),提供丰富的用户体验和强大的后端数据处理...

    flex组件之其他组件实例源码

    "flex组件之其他组件实例源码"这个主题涵盖了一些非基本但非常实用的Flex组件,如高级数据格、打印、视频播放等,这些都是在开发复杂应用时不可或缺的部分。 首先,高级数据格(Advanced Data Grid)是Flex中一个...

    Flex与Flash相互调用实例

    Flex和Flash是两种在Web开发中广泛...通过这个实例,你可以深入理解Flex和Flash的互操作性,这对于开发复杂的混合型Web应用程序非常有价值。了解这些通信机制将使你能够灵活地组合这两种技术,以满足特定项目的需求。

    Flex应用实例 Flex做的旅游系统

    这个“Flex应用实例 - Flex做的旅游系统”是一个很好的学习资源,它展示了Flex在实际项目中的应用,特别是对于旅游行业的信息化管理。 在旅游系统中,Flex的主要优势在于其强大的数据可视化和用户交互能力。以下是...

    Flex创建流程图的实例

    通过以上步骤,我们可以创建一个基本的、具有动态操作的Flex流程图实例。不过,实际应用中可能还需要考虑更多细节,如节点的自定义样式、连接线的形状和箭头、以及复杂的布局算法等。总的来说,Flex为创建此类图形...

    Flex4一步一步实例

    ### Flex4一步一步实例知识点解析 #### 一、Flex4简介及环境搭建 - **Flex4概述**:Flex4是Adobe公司推出的一款用于构建高性能、跨平台的桌面应用程序和Web应用程序的开源框架。它基于ActionScript 3.0,提供了...

    flex+java文件上传完整实例

    1. **FileReference类**:Flex中的FileReference类是与文件操作相关的基础,它允许用户选择一个或多个文件,并提供了读取、保存和上传文件的功能。 2. **事件监听**:在用户选择文件后,我们需要监听DataEvent....

    flex+Struts实例

    10. **国际化和本地化**:了解如何在Flex和Struts2中实现应用的国际化,提供多语言支持。 11. **部署与测试**:理解如何将Flex应用与Struts2应用部署在同一Web服务器上,以及如何进行端到端的测试。 在...

    flex多文件上传 asp.net实例

    总结来说,Flex与ASP.NET结合的多文件上传实例是一个综合性的实践案例,涵盖了前端与后端的协作,涉及到文件操作、网络通信、安全性和用户体验等多个方面。理解和掌握这种技术能够提升开发者在Web开发中的综合能力。

    flex 开发实例 用于flex 沙箱的控制

    如果需要访问本地文件,如读取或写入文件,你需要使用File和FileStream类,这需要在本地沙箱内操作。 描述中提到的“很好的一个Flex实例用于事件富客户端的!”暗示了这个WeatherDemo可能是一个展示了如何处理和...

    flex 实例连载 air 全面

    《Flex实例连载:Air全面解析》 SQLite,作为一款轻量级的关系型数据库管理系统,以其高效、稳定和跨平台的特性,在移动应用和嵌入式系统中广泛应用。本系列教程将深入探讨SQLite在Adobe Air环境中的应用,通过Flex...

    TourDeFlex.air Flex官方实例

    《Flex官方实例——TourDeFlex.air深度解析》 Flex,作为Adobe公司开发的一款强大的富互联网应用程序(Rich Internet Application,简称RIA)开发框架,以其强大的功能和丰富的用户界面组件,深受开发者喜爱。本篇...

    fluorineFx实现Flex与.NET交互实例代码

    本实例代码涵盖了Flex与.NET互操作的多个方面,包括虚拟角色(fluorineFxVR)、服务对象(fluorineFxSO)、服务器RPC(fluorineFxServerRPC)以及聊天应用(fluorineFxChat)。以下是这些关键知识点的详细解释: 1....

    flex Cairngorm框架实例

    4. **服务(Service)**:Cairngorm框架鼓励使用解耦的服务来处理远程调用和本地数据操作。这些服务通常是无状态的,可以被多个组件共享,从而降低耦合度。 5. **事件(Event)**:事件驱动是Cairngorm的重要特征。...

    Flex报表导出实例.zip

    这个"Flex报表导出实例.zip"压缩包文件显然是为了演示如何在Flex项目中实现这样的功能。 首先,让我们了解Flex报表的基本概念。Flex报表通常由多个组件组成,如表格、图表和各种定制的数据显示控件。它们用于显示从...

    Flex开发框架cairngorm入门实例教程.rar

    在“flex cairngorm入门实例教程”中,你可能会学到如何设置项目环境,引入Cairngorm库,创建和配置模型、控制器、命令以及事件监听器。教程可能还会涵盖如何使用Service Locator来注入依赖,以及如何使用...

Global site tag (gtag.js) - Google Analytics