本篇文章给大家介绍一下node.js中的文件夹写入。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
相关推荐:《node js教程》
fs.Dir & fs.Dirent
fs.Dir 是可迭代的目录流的类,fs.Dirent 是遍历 fs.Dir 获得的目录项,可以是文件或目录中的子目录
fs.Dir
dir.path:目录的只读路径dir.read():不传入 callabck 函数则返回 Promise,读取迭代器下一个目录项,返回一个 Promise,resolve 后得到 fs.Dirent 或 null(如果没有更多的目录项要读取)dir.close():不传入 callabck 函数则返回 Promise,关闭目录的底层资源句柄
fs.Dirent
dirent.namedirent.isDirectory()dirent.isFile()dirent.isSymbolicLink()
fs.opendir
fs.opendir(path[, options], callback) 打开一个目录,返回 fs.Dir 对象
const fs = require('fs/promises');async function print(path) { const dir = await fs.opendir(path); for await (const dirent of dir) { console.log(dirent.name); }}print('./').catch(console.error);
登录后复制
可以通过 dir.read() 迭代 dir
const fs = require('fs/promises');async function print(path) { const dir = await fs.opendir(path); let dirent = await dir.read(); while (dirent) { console.log(dirent.name); dirent = await dir.read(); } dir.close();}print('./').catch(console.error);
登录后复制
fs.readdir
fs.readdir(path[, options], callback) 读取目录的内容,回调有两个参数 (err, files),其中 files 是目录中的文件名的数组(不包括 ‘.’ 和 ‘..’)
options
encoding:默认值 utf8,如果 encoding 设置为 ‘buffer’,则返回的文件名是 Buffer 对象withFileTypes:默认值 false,设置为 true 后回调函数 files 数组将包含 fs.Dirent 对象
const fs = require('fs/promises');async function print(path) { const files = await fs.readdir(path); for (const file of files) { console.log(file); }}print('./').catch(console.error);
登录后复制
fs.mkdir
fs.mkdir(path[, options], callback) 创建目录
options
recursive:默认值 false,设置为 true 时候相当命令 mkdir -p 会把不存在的目录创建mode:默认值 0o777,Windows 不支持
// 创建 /tmp/a/apple 目录,无论是否存在 /tmp 和 /tmp/a 目录。fs.mkdir('/tmp/a/apple', { recursive: true }, err => { if (err) throw err;});
登录后复制
fs.rmdir
fs.rmdir(path[, options], callback) fs.rmdir 用于删除文件夹
options
recursive:默认值 false,如果为 true,则执行递归的目录删除。在递归模式中,如果 path 不存在则不报告错误,并且在失败时重试操作retryDelay:默认值 100,出现异常后重试之间等待毫秒数。如果 recursive 选项不为 true,则忽略此选项maxRetries:默认值为 0,表示出现异常后重试的次数,如果遇到 EBUSY、 EMFILE、 ENFILE、 ENOTEMPTY 或 EPERM 错误,则 Node.js 将会在每次尝试时以 retryDelay 毫秒的线性回退来重试该操作。 如果 recursive 为 false,则忽略此选项
const fs = require('fs');fs.rmdir('./tmp', { recursive: true }, err => console.log);
登录后复制
之前 rmdir 只能删除空的文件夹,现在可以连同文件一起删除了
更多编程相关知识,请访问:编程教学!!
以上就是了解一下Node.js中的文件夹写入的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2634909.html