首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

flex相干本地目录操作实例

2012-11-09 
flex有关本地目录操作实例?xml version1.0 encodingutf-8?s:WindowedApplication xmlns:fxhttp

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>

热点排行