Node.js 文件系統

Node.js 文件系統數組

 

/*Node.js 的文件系統 */
var fs = require("fs");
var path = require("path");
var root = "folder";
var file = root + "/" + "file.txt";
var fileData = "***最近想跳河編寫Nodejs File System 服務器端程序***"
//建立文件夾,若存在就不建立了
fs.mkdir(root, function (err) {
    console.log(err ? "該文件夾已經存在,無需建立" : "建立文件夾成功!");
});
//在文件夾中建立文件
fs.exists(file, function (exits) {//回調函數,用參數判斷文件(夾)是否存在
    if (exits) {
        console.log("文件已經存在!")
    } else {
        fs.writeFile(file, fileData, function (err) {
            console.log(err ? "建立文件失敗" : "建立文件成功");
        })
    }
});
//讀取全部文件夾中的全部文件與文件夾
function walkDirs(root){
    console.log("根路徑:"+root);//輸出根路徑
    fs.readdir(root,function(err,entries){
        for (var idx in entries){//回調函數,返回數組
            //路徑合併path.join
            var fullPath = path.join(root,entries[idx]);
            (function(fullPath){//匿名函數
                //判斷該路徑下:是文件or文件夾
                fs.stat(fullPath,function(err,stats){
                    //爲文件,輸出
                    if (stats && stats.isFile()){
                        console.log(fullPath);
                    }else{//文件夾,遞歸
                        if(stats && stats.isDirectory()){
                        walkDirs(fullPath);
                    }}
                })
            })(fullPath)
        }
    })
}
walkDirs(root);
相關文章
相關標籤/搜索