javascript 在节点中创建包含子目录和文件的目录

kg7wmglp  于 2023-06-20  发布在  Java
关注(0)|答案(2)|浏览(177)

我想运行一个脚本,它将创建一个目录,并在一个文件和子目录,类似这样的东西

main-folder 
    > sub-folder
    > file

到目前为止,我还没有任何运气,我的想法是尝试在mkDir函数中写入File

const fileGenerator = (fileName, fileContent) => {
    fs.writeFile(fileName, fileContent, (err) => {
        if (err) throw err;
        console.log('The file has been saved!');
    });
}

fs.mkdir('main-folder', err => {
    if (err) {
        console.log(err);
    } else {
        fileGenerator('index.html', 'hello');
        console.log('Directory Created');
        fs.mkdir('sub-folder', err => {
        if (err) {
            console.log(err);
        } else {
            console.log('Directory Created');
        }
    })
    }
})
7cjasjjr

7cjasjjr1#

代码是“按预期工作”。你创建子文件夹和文件的地方就是回调。节点文件系统中的mkdir函数仍然需要完整路径。它不知道它在“主文件夹”下。
查看编辑的代码:

const fs = require('fs');
const fileGenerator = (fileName, fileContent) => {
    fs.writeFile(fileName, fileContent, (err) => {
        if (err) throw err;
        console.log('The file has been saved!');
    });
}

fs.mkdir('main-folder', err => {
    if (err) {
        console.log(err);
    } else {
        fileGenerator('main-folder/index.html', 'hello');
        console.log('Directory Created');
        fs.mkdir('main-folder/sub-folder', err => {
        if (err) {
            console.log(err);
        } else {
            console.log('Directory Created');
        }
    })
    }
})

你的代码创建了主文件夹,子文件夹和index.html,只是所有相对于js文件。

c9x0cxw0

c9x0cxw02#

fs模块的mkdir函数有一个recursive标志,用于创建不存在的子目录。
示例:

mkdir(folderpath, {
    recursive: true,
});

OR

mkdirSync(folderpath, {
    recursive: true,
});

相关问题