flex(air)有关本地目录操作实例

编程技术  /  houtizong 发布于 3年前   76
<?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\atrace("2、" + File.documentsDirectory.nativePath);    //2、C:\Documents and Settings\a\My Documentstrace("3、" + File.desktopDirectory.nativePath);    //3、C:\Documents and Settings\a\桌面//能兼容(即通用于)各种操作系统,此种方式名为flex的存储路径方式trace("4、" + File.applicationStorageDirectory.resolvePath("mapMarker/").url);    //app-storage:/mapMarkertrace("5、" + File.applicationStorageDirectory.nativePath);    //4、C:\Documents and Settings\a\Application Data\fileUrl\Local Storetrace("6、" + thisProURL(File.applicationDirectory.nativePath));    //(自定义)5、C:\Documents and Settings\a\Adobe Flash Builder Beta 2\fileUrltrace("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 Musictrace("---------------------------------------------------------------------");}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>

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客