背景
- 有时候遇到这个问题,就是向某个目录中写入一个文件,需要层层创建目录,然后才能创建文件,最后写入文件.
- 这个时候就会出现一个麻烦的事情,就是不知道这个目录存不存在,如果这个目录不存在,就是有可能会报错,每次都得检查,就是显得很麻烦,于是封装下面的代码,不过目录存不存在,就是都能写入
代码
| const fs = require('fs'); |
| |
| const writeFileRecursive = function (path, buffer, callback) { |
| |
| let lastPath = path.substring(0, path.lastIndexOf('/')); |
| |
| fs.mkdir(lastPath, { recursive: true }, (err) => { |
| if (err) return callback(err); |
| fs.writeFile(path, buffer, function (err) { |
| if (err) return callback(err); |
| return callback(null); |
| }); |
| }); |
| }; |
| |
| const buffer = 'hello'; |
| writeFileRecursive('./public/test/test.txt', buffer, (err) => { |
| if (err) console.error(err); |
| console.info('write success'); |
| }); |
| |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!