node js 写文件,文件夹不存在则创建

var fs = require('fs')
const dirCache={};
writeFileByUser('./data/17/1017.md');

function writeFileByUser(filePath){
    if (fs.existsSync(filePath)) {
        console.log('该路径已存在');
    }else{
        console.log('该路径不存在');
        mkdir(filePath);
    }

    var data = '\n hello world';  
    fs.appendFile(filePath,data,'utf8',function(err){  
        if(err)  {  
            console.log(err);  
        } else {
            console.log('appendFile 成功了')
        }
    })
}

function mkdir(filePath) {
    const arr=filePath.split('/');
    let dir=arr[0];
    for(let i=1;i<arr.length;i++){
        if(!dirCache[dir]&&!fs.existsSync(dir)){
            dirCache[dir]=true;
            fs.mkdirSync(dir);
        }
        dir=dir+'/'+arr[i];
    }
    fs.writeFileSync(filePath, '')
}
Node.js中,可以使用fs模块来创建文件夹。fs模块是Node.js内置的文件系统模块,提供了一系列用于文件和目录操作的方法。在你提供的代码中,已经使用到了fs模块的mkdir方法来创建文件夹。 具体来说,在你的代码中,通过调用fs.mkdir方法可以创建文件夹。该方法需要传入两个参数,第一个参数是要创建文件夹路径,第二个参数是一个可选的选项对象,其中recursive选项设置为true表示如果父级目录不存在,则会递归创建父级目录。 例如,你的代码中使用fs.mkdir来创建了名为"ftest"的文件夹: ```javascript fs.mkdir('./ftest', { recursive: true }, err => { if (err) throw err; }); ``` 另外,你还可以使用模板字符串来动态构建文件夹路径: ```javascript const fpath = `${row.eid}`; fs.mkdir(`./ftest/${fpath}`, { recursive: true }, err => { if (err) throw err; }); ``` 这样可以根据变量row.eid的值创建相应的文件夹。 综上所述,以上代码演示了如何在Node.js中使用fs模块来创建文件夹。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* *2* [nodejs操作文件,js创建文件夹创建文件目录](https://blog.csdn.net/weixin_44100718/article/details/120001797)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值