zoukankan      html  css  js  c++  java
  • node之fs.stat异步寻找所有服务器目录

    //1.判断服务器上面有没有upload目录。没有创建这个目录。   (图片上传)
    
    //要用fs目录必须得引入fs
    
    var fs=require('fs');
    //
    //fs.stat('upload',function(err,stats){
    //
    //        if(err){  /*没有这个目录*/
    //            fs.mkdir('upload',function(error){
    //                if(error){
    //
    //                    console.log(error);
    //                    return false;
    //                }
    //                console.log('创建成功');
    //            })
    //        }else{
    //            console.log('目录已经存在');
    //            console.log(stats.isDirectory());
    //        }
    //
    //})
    
    
    
    //2. 找出html目录下面的所有的目录,然后打印出来
    
    //错误写法
    //fs.readdir('html',function(err,files){
    //             if(err){
    //                    console.log(error);
    //
    //             }else{  /*判断是目录还是文件夹*/
    //                 console.log(files);  /*数组*/
    //
    //                 for(var i=0;i<files.length;i++){
    //
    //                     console.log(files[i]);
    //                     fs.stat(files[i],function(error,stats){  /*循环判断是目录还是文件  ---异步 错误写法*/
    //
    //                            console.log(files[i]);
    //                     })
    //                 }
    //
    //             }
    //
    //
    //})
    //
    
    
    
    
    
    //打印出什么   3 3  3
    //for(var i=0;i<3;i++){
    //
    //    setTimeout(function(){
    //        console.log(i);
    //    },100)
    //}
    
    
    
    
    //正确的写法
    
    var filesArr=[];
    fs.readdir('html',function(err,files){
                 if(err){
                        console.log(error);
    
                 }else{  /*判断是目录还是文件夹*/
                     //console.log(files);  /*数组*/
    
                     (function getFile(i){
    
                         if(i==files.length){  /*循环结束*/
                             console.log('目录:');
                             console.log(filesArr);   /*打印出所有的目录*/
                             return false;
    
                         }
                         //files[i]  =   css  js   news.html
                         //注意:目录
                         fs.stat('html/'+files[i],function(error,stats){  /*循环判断是目录还是文件  ---异步 错误写法*/
    
                             if(stats.isDirectory()){ /*目录*/
    
                                 filesArr.push (files[i]);  /*保存数据*/
                             }
    
    
                             //递归掉用
                             getFile(i+1);
                         })
                     })(0)
    
                 }
    
    
    })
  • 相关阅读:
    hdu 4614 线段树 二分
    cf 1066d 思维 二分
    lca 最大生成树 逆向思维 2018 徐州赛区网络预赛j
    rmq学习
    hdu 5692 dfs序 线段树
    dfs序介绍
    poj 3321 dfs序 树状数组 前向星
    cf 1060d 思维贪心
    【PAT甲级】1126 Eulerian Path (25分)
    【PAT甲级】1125 Chain the Ropes (25分)
  • 原文地址:https://www.cnblogs.com/qiaohong/p/8456551.html
Copyright © 2011-2022 走看看