AIR打开一个文件,AIR打开一个目录,AIR打开一个文件夹,AIR选择一个文件,AIR选择一个目录,AIR选择一个文件夹。

AIR操作文件,AIR操作文件目录,AIR操作文件路径。

 

package com.vini123
{
    import flash.display.Sprite;
    import flash.filesystem.File;

    import fl.controls.Button;

    import flash.events.MouseEvent;
    import flash.events.Event;
    import flash.net.FileFilter;

    public class Main extends Sprite
    {
        private var _file:File;

        public function Main():void
        {
            Init();
        }

        private function Init():void
        {
            var fileBtn:Button = new Button();
            fileBtn.label = "请选择一个MP3文件";
            fileBtn.name = "fileBtn";
            addChild(fileBtn);
            fileBtn.x = 10;
            fileBtn.y = 10;

            var directoryBtn:Button = new Button();
            directoryBtn.label = "请选择一个文件夹";
            directoryBtn.name = "directoryBtn";
            addChild(directoryBtn);
            directoryBtn.x = fileBtn.x + fileBtn.width + 10;
            directoryBtn.y = 10;

            _file = new File();
            _file.addEventListener(Event.SELECT,selectHandler);

            fileBtn.addEventListener(MouseEvent.CLICK,clickHandler);
            directoryBtn.addEventListener(MouseEvent.CLICK,clickHandler);
        }

        private function clickHandler(e:MouseEvent):void
        {
            var _targetName:String = e.target.name;
            switch (_targetName)
            {
                case "fileBtn" :
                    var _fileFilter:FileFilter = new FileFilter("Select a Mp3 File","*.mp3");
                    _file.browse([_fileFilter]);
                    break;
                case "directoryBtn" :
                    _file.browseForDirectory("Select a Mp3 Directory");
                    break;
                default :
                    break;
            }
        }

        private function selectHandler(e:Event):void
        {
            if ((e.target as File).isDirectory)
            {
                var tempArr:Array = (e.target as File).getDirectoryListing();
                for (var i:int =0; i < tempArr.length; i++)
                {
                    trace(tempArr[i].name);
                }
            }
            trace(e.target.nativePath);
        }
    }
}