zoukankan      html  css  js  c++  java
  • Extjs文件选择器

    Ext.hoo.component.FileBrowserComponent.js

    /** 
     * Ext.hoo.component.FileBrowserWindow 系统文件浏览选择组件,可以选定电脑上的文件或文件夹 
     * @author: hoojo 
     * @createDate 2010-10-17 
     * @email: hoojo_@126.com 
     * @blog: http://blog.csdn.net/IBM_hoojo 
     * @ext_lib: v2.2 
     * @version 1.0  
     */  
    Ext.ns("Ext.hoo.component");  
    Ext.hoo.component.FileBrowserWindow = Ext.extend(Ext.Window, {  
        constructor: function (config) {  
            config = config || {};  
            Ext.apply(this, config);  
            this.tree = new Ext.hoo.tree.FileSystemTree();  
            Ext.hoo.component.FileBrowserWindow.superclass.constructor.call(this, {  
                renderTo: Ext.getBody(),  
                 300,  
                height: 300,  
                frame: true,  
                layout: "fit",  
                border: false,  
                title: "请选择",  
                items: this.tree,  
                buttons: [{  
                    text: "新建",  
                    disabled: true,  
                    handler: this.onNewHandler,  
                    scope: this  
                }, {  
                    text: "确定",  
                    disabled: true,  
                    handler: this.onOkHandler,  
                    scope: this  
                }, {  
                    text: "取消",  
                    handler: function () {  
                        this.hide(Ext.getBody());  
                    },  
                    scope: this  
                }]  
            });  
        },  
        onNewHandler: function () {  
            this.setPath();  
            this.setFile();  
            Ext.Msg.prompt("新建文件", "请输入文件夹名称", this.onCreateDir, this);  
        },  
        onOkHandler: function () {  
            this.setPath();  
            this.setFile();  
            Ext.Msg.alert("路径", this.getPath());  
        },   
        onCreateDir: function (btn, text) {  
            if (btn == "ok") {  
                var path = this.getPath();  
                var node = this.getFile();  
                var dirName = text;  
                if (!!path && !!dirName) {  
                    //本地添加模式  
                    /*var newNode = new Ext.tree.AsyncTreeNode({ 
                        text: dirName, 
                        path: node.attributes.path + "/" + dirName 
                    }); 
                    node.expand(true, true); 
                    node.appendChild(newNode);*/  
                    //远程加载模式  
                    Ext.Ajax.request({  
                        url: Ext.hoo.tree.FileSystemTree.TREE_CREATE_DIR_URL,  
                        params: {path: encodeURIComponent(path), dirName: encodeURIComponent(dirName)},//处理中文文件名,乱码问题  
                        success: function (response, options) {  
                            var returnNnode = Ext.decode(response.responseText);  
                            node.appendChild(returnNnode);  
                            node.expand(true);  
                        },  
                        failure: function (response) {  
                            Ext.Msg.alert("程序异常", response.responseText);  
                        }  
                    });  
                }  
            }  
        },  
        setPath: function () {  
            this.path = this.tree.getSelectedNode().attributes.path || "";  
        },  
        setFile: function () {  
            this.nodeFile = this.tree.getSelectedNode() || {};  
        },  
        getPath: function () {  
            return this.path;     
        },  
        getFile: function () {  
            return this.nodeFile;  
        }  
    });  
      
    /** 
     * Ext.hoo.component.FileBrowserPanel 系统文件浏览选择组件,可以选定电脑上的文件或文件夹 
     * 不同于上面的是,这里是一个panel。有时候弹出window,并不能达到预想的效果。特别是window弹出在 
     * iframe中的Object对象上面,如:在播放器上面弹出此组件,拖动windwo的效果不理想。 
     * 这时就需要用模态,模态嵌入FileBrowserPanel组件即可 
     * @author: hoojo 
     * @createDate 2010-10-17 
     * @email: hoojo_@126.com 
     * @blog: http://blog.csdn.net/IBM_hoojo 
     * @ext_lib: v2.2 
     * @version 1.0  
     */  
    Ext.hoo.component.FileBrowserPanel = Ext.extend(Ext.Panel, {  
        constructor: function (config) {  
            config = config || {};  
            Ext.apply(this, config);  
            this.tree = new Ext.hoo.tree.FileSystemTree();  
            Ext.hoo.component.FileBrowserPanel.superclass.constructor.call(this, {  
                renderTo: Ext.getBody(),  
                border: false,  
                 300,  
                height: 400,  
                layout: "fit",  
                title: "请选择",  
                items: this.tree,  
                buttons: [{  
                    text: "新建",  
                    disabled: true,  
                    handler: this.onNewHandler,  
                    scope: this  
                }, {  
                    text: "确定",  
                    disabled: true,  
                    handler: function () {  
                        this.path = this.tree.getSelectedNode().attributes.path || "";  
                        this.nodeFile = this.tree.getSelectedNode() || {};  
                        //window.returnValue = this.path;  
                        //window.close();  
                        Ext.Msg.alert("路径", this.path);  
                    },  
                    scope: this  
                }, {  
                    text: "取消",  
                    handler: function () {  
                        this.hide(Ext.getBody());  
                        //window.close();  
                    },  
                    scope: this  
                }]  
            });  
        },  
        onNewHandler: function () {  
            this.setPath();  
            this.setFile();  
            Ext.Msg.prompt("新建文件", "请输入文件夹名称", this.onCreateDir, this);  
        },  
        onCreateDir: function (btn, text) {  
            if (btn == "ok") {  
                var path = this.getPath();  
                var node = this.getFile();  
                var dirName = text;  
                if (!!path && !!dirName) {  
                    //本地添加模式  
                    /*var newNode = new Ext.tree.AsyncTreeNode({ 
                        text: dirName, 
                        path: node.attributes.path + "/" + dirName 
                    }); 
                    node.expand(true, true); 
                    node.appendChild(newNode);*/  
                    //远程加载模式  
                    Ext.Ajax.request({  
                        url: Ext.hoo.tree.FileSystemTree.TREE_CREATE_DIR_URL,  
                        params: {path: encodeURIComponent(path), dirName: encodeURIComponent(dirName)},//处理中文文件名,乱码问题  
                        success: function (response, options) {  
                            var returnNnode = Ext.decode(response.responseText);  
                            node.appendChild(returnNnode);  
                            node.expand(true, true);  
                        },  
                        failure: function (response) {  
                            Ext.Msg.alert("程序异常", response.responseText);  
                        }  
                    });  
                }  
            }  
        },  
        setPath: function () {  
            this.path = this.tree.getSelectedNode().attributes.path || "";  
        },  
        setFile: function () {  
            this.nodeFile = this.tree.getSelectedNode() || {};  
        },  
        getPath: function () {  
            return this.path;     
        },  
        getFile: function () {  
            return this.nodeFile;  
        }  
    });  
      
    /** 
     * Ext.hoo.tree.FileSystemTree 系统文件树,显示所有的文件 
     * @author: hoojo 
     * @createDate 2010-10-17 
     * @email: hoojo_@126.com 
     * @blog: http://blog.csdn.net/IBM_hoojo 
     * @ext_lib: v2.2 
     * @version 1.0  
     */  
    Ext.ns("Ext.hoo.tree");  
    Ext.hoo.tree.FileSystemTree = Ext.extend(Ext.tree.TreePanel, {  
        constructor: function () {        
            Ext.hoo.tree.FileSystemTree.superclass.constructor.call(this, {  
                //rootVisible: false,  
                autoScroll: true,  
                root: new Ext.tree.AsyncTreeNode({  
                    text: "My System Files",  
                    id: "0",  
                    path: "root",  
                    children:[]  
                }),  
                listeners: {  
                    expandnode: {  
                        fn: this.onExpandNode,  
                        scope: this  
                    }  
                }  
            });  
        },  
        onExpandNode: function (node) {  
            //只对未加载过的添加子结点,加载后不在重复加载;避免增加请求,浪费资源  
            if (!node.attributes.isLoad) {  
                Ext.Ajax.request({  
                    url: Ext.hoo.tree.FileSystemTree.TREE_DATA_URL,  
                    params: {path: encodeURIComponent(node.attributes.path)},//处理中文文件名,乱码问题  
                    success: function (response, options) {  
                        node.attributes.isLoad = true;//设置加载标示  
                        var nodes = Ext.decode(response.responseText);  
                        node.appendChild(nodes);  
                    },  
                    failure: function (response) {  
                        Ext.Msg.alert("程序异常", response.responseText);  
                    }  
                });  
            }  
        },   
        getSelectedNode: function () {  
            return this.getSelectionModel().getSelectedNode();  
        }  
    });  
    Ext.hoo.tree.FileSystemTree.TREE_CREATE_DIR_URL = 'browserfile.app?dateTime=' + new Date().getTime() + '&subTranCode=mkDir';  
    //Ext.hoo.tree.FileSystemTree.TREE_DATA_URL = "http://localhost:8080/Test/FileBrowser?method=getData";
    Ext.hoo.tree.FileSystemTree.TREE_DATA_URL = 'browserfile.app?dateTime=' + new Date().getTime() + '&subTranCode=getData';
    //Ext.hoo.tree.FileSystemTree.TREE_DATA_URL = "FileBrowser?method=getData"; 
    function fromExcel(){
        var dxjgdm_sel = Ext.get("dxjgdm").getValue();
        var dxjglx_sel = Ext.get("dxjglx").getValue();
        var fileBrowser = new Ext.hoo.component.FileBrowserWindow();  
        //var fileBrowser = new Ext.hoo.component.FileBrowserPanel();  
        fileBrowser.show();  
        fileBrowser.tree.getSelectionModel().on("beforeselect", function (sm, node) {  
            //只能选择文件夹,如果要选择文件修改这里即可  
            var flag = ((!node || (!!node && !!node.leaf)) || !(node.attributes.path.indexOf(":") != -1)) ? true : false;  
            fileBrowser.buttons[0].setDisabled(flag);  
            fileBrowser.buttons[1].setDisabled(flag);  
        }, fileBrowser.tree);
    
    }
    package com.hundsun.tamcx.tycfgl.ywcs.jgxxgl.util;
    
    import java.util.ArrayList;
    import java.util.List;
    
    /** 
     * <b>function:</b>文件信息 
     * @author hoojo 
     * @createDate Oct 10, 2010 9:53:51 PM 
     * @file FileInfo.java 
     * @package com.hoo.entity 
     * @project MultiUpload 
     * @blog http://blog.csdn.net/IBM_hoojo 
     * @email hoojo_@126.com 
     * @version 1.0 
     */
    public class FileInfo {
        //文件id  
        private String id;  
        //文件名称  
        private String name;  
        private String text;  
        //文件路径  
        private String path;  
        //是否有目录,有无子节点  
        private boolean leaf;  
        //修改日期  
        private String editDate;  
        //后缀  
        private String suffix;  
        //长度  
        private long length;  
        // 子目录中所有文件  
        private List<FileInfo> children = new ArrayList<FileInfo>();  
        //setter、getter   
        public String toString() {  
            return "name:" + name + ", size:" + children.size();  
        }
        
        public String getId() {
            return id;
        }
        public void setId(String id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getText() {
            return text;
        }
        public void setText(String text) {
            this.text = text;
        }
        public String getPath() {
            return path;
        }
        public void setPath(String path) {
            this.path = path;
        }
        public boolean isLeaf() {
            return leaf;
        }
        public void setLeaf(boolean leaf) {
            this.leaf = leaf;
        }
        public String getEditDate() {
            return editDate;
        }
        public void setEditDate(String editDate) {
            this.editDate = editDate;
        }
        public String getSuffix() {
            return suffix;
        }
        public void setSuffix(String suffix) {
            this.suffix = suffix;
        }
        public long getLength() {
            return length;
        }
        public void setLength(long length) {
            this.length = length;
        }
        public List<FileInfo> getChildren() {
            return children;
        }
        public void setChildren(List<FileInfo> children) {
            this.children = children;
        }
        
    }
    package com.hundsun.tamcx.tycfgl.ywcs.jgxxgl.util;
    
    import java.io.File;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.UUID;
    
    
    /** 
     * <b>function:</b> 磁盘文件操作工具类 
     * @project Test 
     * @package com.hoo.util  
     * @fileName FileUtils.java 
     * @createDate 2010-10-4 下午03:32:42 
     * @author hoojo 
     */ 
    public abstract class FileUtils {
         /** 
         * <b>function:</b>传递一个File,返回该文件的FileInfo实体类 
         * @author hoojo 
         * @createDate Oct 10, 2010 10:10:19 PM 
         * @param file File 
         * @return FileInfo 
         */  
        public static FileInfo getFileInfo(File file) {  
            FileInfo info = new FileInfo();
            if (file != null) {  
                info.setId(UUID.randomUUID().toString()); 
                if (file.getName() == null || "".equals(file.getName()) || "::".equals(file.getName())) {
                    info.setName(file.getAbsolutePath());  
                } else {  
                    info.setName(file.getName());  
                }  
                //info.setLeaf(file.isFile());  
                info.setLeaf(!file.isDirectory());  
                info.setLength(file.length());  
                info.setPath(getDoPath(file.getAbsolutePath()));  
                info.setSuffix(getType(file.getName()));  
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
                Date date = new Date();  
                date.setTime(file.lastModified());  
                info.setEditDate(sdf.format(date));
            }  
            return info;  
        }  
          
        public static void setFileInfo(File file, FileInfo info) {  
            if (file != null && info != null) {  
                info.setId(UUID.randomUUID().toString());  
                if (file.getName() == null || "".equals(file.getName()) || "::".equals(file.getName())) {  
                    info.setName(file.getAbsolutePath());  
                } else {  
                    info.setName(file.getName());  
                }  
                //info.setLeaf(file.isFile());  
                info.setLeaf(!file.isDirectory());  
                info.setLength(file.length());  
                info.setPath(getDoPath(file.getAbsolutePath()));  
                info.setSuffix(getType(file.getName()));  
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  
                Date date = new Date();  
                date.setTime(file.lastModified());  
                info.setEditDate(sdf.format(date));  
            }  
        }  
          
        /** 
         * <b>function:</b>处理后的系统文件路径 
         * @author hoojo 
         * @createDate Oct 10, 2010 12:49:31 AM 
         * @param path 文件路径 
         * @return 返回处理后的路径 
         */  
        public static String getDoPath(String path) {  
            path = path.replace("//", "/");  
            String lastChar = path.substring(path.length() - 1);  
            if (!"/".equals(lastChar)) {  
                path += "/";  
            }  
            return path;  
        }  
          
        /** 
         * <b>function:</b>和文件后缀一样,不同的是没有“.” 
         * @author hoojo 
         * @createDate Oct 10, 2010 2:42:43 PM 
         * @param fileName 文件名称 
         * @return 
         */  
        public static String getType(String fileName) {  
         int index = fileName.lastIndexOf(".");  
            if (index != -1) {  
                String suffix = fileName.substring(index + 1);//后缀  
                return suffix;   
            } else {  
                return null;  
            }  
        }  
          
        /** 
         * <b>function:</b> 得到指定目录下所有的文件集合 
         * @createDate 2010-10-20 下午02:20:06 
         * @author hoojo 
         * @param info 将数据设置在该变量中 
         * @param file 文件目录 
         */  
        public static void getAllFileInfo(FileInfo info, File file) {  
            if (file.isDirectory()) {  
                long size = 0;  
                File[] allFiles = file.listFiles();  
                for (File f : allFiles) {  
                    size += f.length();  
                    FileInfo fi = getFileInfo(f);  
                    info.getChildren().add(fi);  
                    getAllFileInfo(fi, f);  
                }  
                info.setLength(size);  
            }  
        }  
          
        /** 
         * <b>function:</b> 得到当前目录所有文件 
         * @createDate 2010-10-20 下午02:21:06 
         * @author hoojo 
         * @param info 文件对象 
         * @param file 目录 
         */  
        public static void getFileInfo(FileInfo info, File file, String[] allowTypes) {  
            if (file.isDirectory()) {  
                long size = 0;  
                File[] allFiles = file.listFiles();  
                for (File f : allFiles) {  
                    size += f.length();  
                    FileInfo fi = getFileInfo(f);  
                    if (f.isDirectory()) {  
                        info.getChildren().add(fi);  
                    } else {  
                        if (validTypeByName(f.getName(), allowTypes, true)) {  
                            info.getChildren().add(fi);  
                        }  
                    }  
                }  
                info.setLength(size);  
            }  
        }  
          
        /** 
         * <b>function:</b> 根据文件名和类型数组验证文件类型是否合法,flag是否忽略大小写 
         * @author hoojo 
         * @createDate Oct 10, 2010 11:54:54 AM 
         * @param fileName 文件名 
         * @param allowTypes 类型数组 
         * @param flag 是否获得大小写 
         * @return 是否验证通过 
         */  
        public static boolean validTypeByName(String fileName, String[] allowTypes, boolean flag) {  
            String suffix = getType(fileName);  
            boolean valid = false;  
            if (allowTypes.length > 0 && "*".equals(allowTypes[0])) {  
                valid = true;  
            } else {  
                for (String type : allowTypes) {  
                    if (flag) {//不区分大小写后缀  
                        if (suffix != null && suffix.equalsIgnoreCase(type)) {  
                            valid = true;  
                            break;  
                        }  
                    } else {//严格区分大小写  
                        if (suffix != null && suffix.equals(type)) {  
                            valid = true;  
                            break;  
                        }  
                    }  
                }  
            }  
            return valid;  
        }  
          
        /** 
         * <b>function:</b> 在path目录下创建目录 
         * @createDate 2010-11-3 下午04:03:34 
         * @author hoojo 
         * @param path 
         * @param dirName 
         * @return 
         */  
        public static boolean mkDir(String path, String dirName) {  
            boolean success = false;  
            File file = new File(getDoPath(path) + dirName);  
            if (!file.exists()) {  
                success = file.mkdirs();  
            }   
            return success;  
        }
    }
    package com.hundsun.tamcx.tycfgl.ywcs.jgxxgl.util;
    
    import java.io.File;
    import java.io.IOException;
    import java.io.PrintWriter;
    import java.net.URLDecoder;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.swing.filechooser.FileSystemView;
    
    import net.sf.json.JSONArray;
    
    /** 
     * <b>function:</b> 查询本地硬盘文件数据、创建目录 
     * @project Test 
     * @package com.hoo.servlet  
     * @fileName FileBrowser.java 
     * @author hoojo 
     */ 
    public class FileBrowser extends HttpServlet {
    
        /**
         * 
         */
        private static final long serialVersionUID = 8642420418794855208L;
    
        @Override
        protected void doGet(HttpServletRequest request, HttpServletResponse response)
                throws ServletException, IOException {
            // TODO Auto-generated method stub
            response.setContentType("text/html");  
            response.setCharacterEncoding("UTF-8");  
            PrintWriter out = response.getWriter();  
              
            String path = request.getParameter("path");  
            path = path == null ? "" : URLDecoder.decode(path, "UTF-8");  
            String method = request.getParameter("method");  
            FileInfo info = new FileInfo();  
            if ("getData".equals(method)) {  
                if ("root".equals(path)) {            
                    FileSystemView fsv = FileSystemView.getFileSystemView();  
                    File[] roots = fsv.getRoots(); //File.listRoots();  
                    //桌面  
                    for (File f : roots) {  
                        info.getChildren().add(FileUtils.getFileInfo(f));  
                    }  
                    for (File f : roots[0].listFiles()) {  
                        if (f.getName().contains("My Documents")) {  
                            info.getChildren().add(FileUtils.getFileInfo(f));  
                        }  
                    }  
                    FileInfo fileInfo = new FileInfo();  
                    fileInfo.setName("我的电脑");  
                    fileInfo.setPath("My Computer");  
                    for (File fi : roots[0].listFiles()[0].listFiles()) {  
                        fileInfo.getChildren().add(FileUtils.getFileInfo(fi));  
                    }  
                    info.getChildren().add(fileInfo);  
                    fileInfo = new FileInfo();  
                    fileInfo.setName("网上邻居");  
                    fileInfo.setPath("Network Place");  
                    for (File fi : roots[0].listFiles()[1].listFiles()) {  
                        fileInfo.getChildren().add(FileUtils.getFileInfo(fi));  
                    }  
                    info.getChildren().add(fileInfo);  
                      
                    out.print(JSONArray.fromObject(info.getChildren()).toString());  
                } else if (path != null && !"".equals(path)) {  
                    FileUtils.getFileInfo(info, new File(path), new String[] {"*"});  
                    out.print(JSONArray.fromObject(info.getChildren()).toString());  
                }   
            }  
            if ("mkDir".equals(method)) {  
                String dirName = request.getParameter("dirName");  
                dirName = dirName == null ? "" : URLDecoder.decode(dirName, "UTF-8");  
                boolean success = false;  
                try {  
                    success = FileUtils.mkDir(path, dirName);  
                    FileInfo node = FileUtils.getFileInfo(new File(FileUtils.getDoPath(path) + dirName));  
                    out.print(JSONArray.fromObject(node));  
                } catch (Exception e) {  
                    e.printStackTrace();  
                    success = false;  
                }  
                System.out.println(success);  
            }  
            out.flush();  
            out.close();
            
            
            //super.doGet(req, resp);
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp)
                throws ServletException, IOException {
            // TODO Auto-generated method stub
            super.doPost(req, resp);
        }
        
        
    }
    package com.hundsun.tamcx.tycfgl.ywcs.jgxxgl.util;
    
    import java.io.File;
    import java.io.PrintWriter;
    import java.io.UnsupportedEncodingException;
    import java.net.URLDecoder;
    
    import javax.swing.filechooser.FileSystemView;
    
    import net.sf.json.JSONArray;
    
    import com.hundsun.tamcx.system.ctl.HibernateBaseCtl;
    import com.hundsun.tamcx.util.HsException;
    
    public class BrowserFile  extends HibernateBaseCtl {
    
        @Override
        public void doControl() throws HsException {
            // TODO Auto-generated method stub
            PrintWriter out = null;  
              
            String path = ""; 
            FileInfo info = null;
            try{
                response.setContentType("text/html");  
                response.setCharacterEncoding("UTF-8");  
                out = response.getWriter();  
                  
                path = request.getParameter("path");  
                path = path == null ? "" : URLDecoder.decode(path, "UTF-8");   
                info = new FileInfo();
                if(subTranCode.equals("getData")){
                    getData(out,path,info);
                }else if(subTranCode.equals("mkDir")){
                    mkDir(out,path);
                }else {
                    
                }
            }catch(Exception e){
                $Error(e.getMessage());
            }finally{
                 out.flush();  
                 out.close();
            }
        }
    
        private void mkDir(PrintWriter out,String path) throws UnsupportedEncodingException {
            // TODO Auto-generated method stub
            String dirName = request.getParameter("dirName");  
            dirName = dirName == null ? "" : URLDecoder.decode(dirName, "UTF-8");  
            boolean success = false;  
            try {  
                success = FileUtils.mkDir(path, dirName);  
                FileInfo node = FileUtils.getFileInfo(new File(FileUtils.getDoPath(path) + dirName));  
                out.print(JSONArray.fromObject(node));  
            } catch (Exception e) {  
                e.printStackTrace();  
                success = false;  
            }  
            System.out.println(success);
        }
    
        private void getData(PrintWriter out,String path,FileInfo info) {
            // TODO Auto-generated method stub
            if ("root".equals(path)) {   
                FileSystemView fsv = FileSystemView.getFileSystemView();  
                File[] roots = fsv.getRoots(); //File.listRoots();  
                //桌面  
                for (File f : roots) {  
                    info.getChildren().add(FileUtils.getFileInfo(f));  
                }  
                for (File f : roots[0].listFiles()) {
                    if (f.getName().contains("My Documents")) {  
                        info.getChildren().add(FileUtils.getFileInfo(f));  
                    }  
                }  
                FileInfo fileInfo = new FileInfo();  
                fileInfo.setName("我的电脑");  
                fileInfo.setPath("My Computer"); 
                for (File fi : roots[0].listFiles()[0].listFiles()) {  
                    fileInfo.getChildren().add(FileUtils.getFileInfo(fi));  
                }
                info.getChildren().add(fileInfo);  
                fileInfo = new FileInfo();  
                fileInfo.setName("网上邻居");  
                fileInfo.setPath("Network Place");
                for (File fi : roots[0].listFiles()[1].listFiles()) {
                    System.out.println("-----1");
                    fileInfo.getChildren().add(FileUtils.getFileInfo(fi));
                }
                info.getChildren().add(fileInfo);  
                System.out.println("-----2");
                System.out.println(info.getChildren());
                System.out.println("-----3");
                System.out.println(JSONArray.fromObject(info.getChildren()).toString());
                System.out.println("-----4");
                out.print(JSONArray.fromObject(info.getChildren()).toString()); 
                System.out.println("-----7");
            } else if (path != null && !"".equals(path)) {
                System.out.println("-----8");
                FileUtils.getFileInfo(info, new File(path), new String[] {"*"});  
                out.print(JSONArray.fromObject(info.getChildren()).toString());
                System.out.println("-----9");
            }
        }
        
    }
  • 相关阅读:
    使用gdb跟踪Linux内核启动过程(从start_kernel到init进程启动)
    对一个简单的时间片轮转多道程序内核代码的浅析
    初识计算机工作过程
    React 中 路由 react-router-dom 的用法
    Vue Nuxt.js项目启动后可以在局域网内访问的配置方法
    node express async regeneratorRuntime is not defined (已解决)
    node+vue实现微信支付(沙箱)完整版,亲测可用
    node+vue实现支付宝支付(沙箱)完整版,亲测可用
    Vue.js中Line第三方登录api实现[亲测可用]
    React中WebSocket使用以及服务端崩溃重连
  • 原文地址:https://www.cnblogs.com/mingforyou/p/3300061.html
Copyright © 2011-2022 走看看