JS 创建多级目录

    技术2024-03-30  92

    使用fs函数,但是旧版本的库不支持

    let fs = require('fs') let path = require('path') var tempPath = "D:/temp/temp1/temp2/temp3/temp.txt"; var parentPath = path.dirname(tempPath); if (!fs.existsSync(parentPath)) { fs.mkdirSync(parentPath, { recursive: true }); }

    使用递归的方式创建多级目录

    let fs = require('fs') let path = require('path') var tempPath = "D:/temp/temp1/temp2/temp3/temp.txt"; function mkdirsSync(dirname) { if (fs.existsSync(dirname)) { return true; } else { if (mkdirsSync(path.dirname(dirname))) { fs.mkdirSync(dirname); return true; } } } mkdirsSync(path.dirname(tempPath))

    使用数组方式循环创建

    let fs = require('fs') let path = require('path') var tempPath = "D:/temp/temp1/temp2/temp3/temp.txt"; function mkdirsSync(dirname) { path.normalize(dirname) .split(path.sep) .reduce((previousPath, folder) => { var currentPath = path.join(previousPath, folder); if (!fs.existsSync(currentPath)) { fs.mkdirSync(currentPath); } return currentPath; }); } mkdirsSync(path.dirname(tempPath))
    Processed: 0.059, SQL: 9