node笔记(二)-fs模块中

图片上传情况

判断服务器是否有upload这个目录,如果没有,则创建

var fs = require('fs');
fs.stat('upload',function(err,state){
    if(err){
        fs.mkdir('upload',function(error){
            if(error){
                console.log(error);
                return false;
            }
            console.log('创建成功')
        })
    }else{
        console.log('目录已经存在')
        console.log(state.isDirectory())
    }
})

连续运行2次

《node笔记(二)-fs模块中》

找出html目录下面的所有的目录,然后打印出来

《node笔记(二)-fs模块中》

异步,得不到数据

fs.stat是个异步的方法

var fs = require('fs');

fs.readdir('html',function(err,files){
    if(err){
        console.log(err)
        return false;
    }else{
        console.log(files);
        for(var i=0;i<files.length;i++){
            console.log(files[i]);
            console.log("....");
            fs.stat(files[i],function(error,state){
                console.log(files[i])
            })
        }
    }
})

《node笔记(二)-fs模块中》

同步,可以得到数据

var filesArr = [];
fs.readdir('html',function(err,files){
    if(err){
        console.log(err)
        return false;
    }else{
        (function getFile(i){
            if(i == files.length){
                console.log('目录:')
                console.log(filesArr)
                return false
            }
            fs.stat('html/' + files[i],function(error,state){
                if(state.isDirectory()){
                    filesArr.push(files[i])
                }
                getFile(i+1)
            })
        })(0)
    }
})

《node笔记(二)-fs模块中》

    原文作者:渣渣辉
    原文地址: https://segmentfault.com/a/1190000016762824
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞