得到各系统的所有文件02

public void browseServerFile(EsbBarDo Do, String browseFolderName)
    {
     // 校验当前系统类型,设置根目录
        getOperationSystemInfo(Do);

        // 设置当前父目录
        Do.setCurrentParentPath(Do.getCurrentParentPath() + browseFolderName
                + System.getProperties().getProperty("file.separator"));
        try
        {
            // 获取当前目录下的所有文件
            Do.setFilevos(FileVO.getCurrentPathAllFile(Do
                    .getCurrentParentPath()));
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
        }
    }

    /**
     * 得到所有的盘符/根路径
     * {@inheritDoc}
     */
    public void browseDisk(EsbBarDo Do, String diskName)
    {
        getOperationSystemInfo(Do);
       Do.setDiskName(diskName
                + System.getProperties().getProperty("file.separator"));
       Do.setCurrentParentPath(Do.getDiskName());
        try
        {
           Do.setFilevos(FileVO.getCurrentPathAllFile(Do
                    .getCurrentParentPath()));
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
        }
    }


    /**
     * 返回上一级目录
     *
     * @param CommonDO common元数据
     */
    public void browseParentPath(EsbBarDo Do)
    {
        String temp = Do.getCurrentParentPath();

        String parentLevel = Do.getCurrentParentPath();

        if (temp.indexOf(System.getProperties().getProperty("file.separator")) > 0)
        {
            temp = temp.substring(0, temp.lastIndexOf(System.getProperties()
                    .getProperty("file.separator")));

            if (temp.indexOf(System.getProperties().getProperty(
                    "file.separator")) > 0)
            {
                parentLevel = temp.substring(0, temp.lastIndexOf(System
                        .getProperties().getProperty("file.separator"))+1);
            }
        }
        try
        {
            // 获取当前目录下所有文件
            Do.setFilevos(FileVO.getCurrentPathAllFile(parentLevel));
            Do.setCurrentParentPath(parentLevel);
        }
        catch (Exception ex)
        {
            ex.printStackTrace();
        }
    } 
    /**
     * 验证操作系统 设置根目录 设置是否window操作系统 获得所有磁盘名
     */
    private void getOperationSystemInfo(EsbBarDo Do)
    {
        List<String> local_diskNames = null;
        // 验证是否为Window操作系统
        if (System.getProperties().getProperty("os.name").contains("Window"))
        {
            local_diskNames = new ArrayList<String>(5);
            //得到所有的根目录
            File[] files = File.listRoots();
            for (File f : files)
            {
                // f.getPath()==C:\
                local_diskNames.add(f.getPath());
            }
            Do.setDiskNames(local_diskNames);

            // 初始化
            if (StringUtils.isEmpty(Do.getCurrentParentPath()))
            {
                if (local_diskNames.size() <= 0)
                {
                    return;
                }
                if (StringUtils.isEmpty(Do.getDiskName()))
                {
                    Do.setDiskName(local_diskNames.get(0));
                }
                Do.setCurrentParentPath(local_diskNames.get(0));
            }
            Do.setWindowOS(true);
        }
        else
        {
            // 如果不是windows操作系统,则直接获取根目录
            Do.setCurrentParentPath(System.getProperties().getProperty(
                    "file.separator"));
        }

    }

猜你喜欢

转载自xieguowei123485.iteye.com/blog/1434313