zoukankan      html  css  js  c++  java
  • [AIR] 获取U盘,打开U盘

    示例:

    获取存储卷的方法:

    package com.controls
    {
        import flash.events.StorageVolumeChangeEvent;
        import flash.filesystem.StorageVolume;
        import flash.filesystem.StorageVolumeInfo;
    
        /**
         * @author Frost.Yen
         * @E-mail 871979853@qq.com
         * @create 2016-10-10 下午3:31:57
         *
         */
        public class StorageVolumeControl
        {
            
            public function StorageVolumeControl()
            {
                //监听外部设备连接和断开状态
                if (StorageVolumeInfo.isSupported)
                {
                    trace("平台支持 StorageVolumeInfo 类");
                    //卷装入;
                    StorageVolumeInfo.storageVolumeInfo.addEventListener(StorageVolumeChangeEvent.STORAGE_VOLUME_MOUNT, onVolumeMount);
                    //存储卷卸载;
                    StorageVolumeInfo.storageVolumeInfo.addEventListener(StorageVolumeChangeEvent.STORAGE_VOLUME_UNMOUNT, onVolumeUnmount);
                }
                else
                {
                    trace("平台不支持 StorageVolumeInfo 类");
                }
            }
            private function onVolumeMount(e:StorageVolumeChangeEvent):void
            {
                trace( e.storageVolume.name,"检测到可移动磁盘" );
                //trace( e.storageVolume.fileSystemType );
                //trace( e.storageVolume.isRemovable );
                //trace( e.storageVolume.isWritable );
                //trace( e.storageVolume.rootDirectory );
                //trace( e.storageVolume.rootDirectory.nativePath );
            }
            private function onVolumeUnmount(e:StorageVolumeChangeEvent):void
            {
                trace("卸载可移动磁盘" );
            }
            /**
             * 获取所有 存储卷对象StorageVolume
             * @return 
             * 
             */        
            public function getStorageVolumes():Vector.<StorageVolume>
            {
                var volumes:Vector.<StorageVolume >  = new Vector.<StorageVolume >;
                volumes = StorageVolumeInfo.storageVolumeInfo.getStorageVolumes();
                return volumes;
            }
            /**
             * 获取可以可删除的存储卷( 操作系统将存储卷视为可删除 (true) 还是不可删除 (false)。) 
             * @return 
             * 
             */        
            public function getRemovable():Vector.<StorageVolume>
            {
                var removable:Vector.<StorageVolume> = new Vector.<StorageVolume>();
                var volumes:Vector.<StorageVolume >= getStorageVolumes();
                for (var i:int = 0; i < volumes.length; i++)
                {
                    if (volumes[i].isRemovable)
                    {
                        trace(volumes[i].rootDirectory.nativePath);
                        removable.push(volumes[i]);
                    }
                }
                return removable;
            }
        }
    }

    打开第一个U盘:

    var volumes:Vector.<StorageVolume> = _storageVolume.getRemovable();
    if(volumes.length){
        var file2:File =new File(volumes[0].rootDirectory.nativePath);
        file2.openWithDefaultApplication();
    }
  • 相关阅读:
    Activiti服务类-1 DynamicBpmnService服务类
    Activiti工作流学习(一)——Activiti服务类
    怎么才能将文件流或者图片转化为base64,传到前台展示
    idea导入eclipse项目
    使用IDEA开发Activiti工作流
    idea中创建多module的maven工程
    Git的使用--如何将本地项目上传到Github
    Spring Boot 入门搭建
    Json中相同或者重复记录的值相加组成新的Json
    前端基础之jQuery入门 01
  • 原文地址:https://www.cnblogs.com/frost-yen/p/6196621.html
Copyright © 2011-2022 走看看