切换导航
简历
工具
演示
查询
导航菜单
服务端
30
前端
114
数据库
82
进阶开发
8
桌面程序
2
QA
15
软件使用
36
规范协议
5
操作系统
11
AI
0
复用资源
6
硬件
0
标签
HTML
正则表达式
Json
包管理工具
vite
CSS
XPath
JavaScript
Jquery
less
ES6
Vue
React
vue 3
Layui
editor.md
sea.js
Zepto.js
mysql.js
mssql.js
NodeJs
Express
前端template
YAML
杂项
外部链接
.NET Core SDK和运行时安装包
淘宝 NPM 镜像
查询网
Tables Generator线上表格转换工具
引用cdn在线脚本和样式
首页
前端
nodeJs 基础之文件Directory操作
[TOC] ### 常用的文件操作方法 #### 异步创建目录 `fs.mkdir(path,mode,callback(error))` + 第一个参数path:目录路径 + 第二个参数mode:指定修改后的文件或目录读写权限,默认是`0777` + 第三参数callback:回调函数,回到函数error对象参数,函数执行的错误信息,如果为null则表示函数执行正常,否则执行异常error可看错误的信息。 ```js let path = require("path") let fs = require("fs") fs.mkdir(path.join(__dirname,"00-uplaodFile"),(err) =>{ console.log(err) }) //输出:null ``` #### 同步创建目录 `fs.mkdirSync(path,mode)` + 第一个参数path:目录路径 + 第二个参数mode:指定修改后的文件或目录读写权限,默认是`0777` ```js let path = require("path") let fs = require("fs") fs.mkdirSync(path.join(__dirname,"01-uplaodFile")) ``` #### 异步读取目录 `fs.readdir(path,options,callback(err,files))` + 第一个参数path:目录路径 + 第二个参数options: string或则Object,string类型表示编码方式(utf8) + 第三参数callback:回调函数,回到函数error对象参数,函数执行的错误信息,如果为null则表示函数执行正常,否则执行异常error可看错误的信息,第二个参数files是目录下读取出来的文件和目录数组。 ```js let path = require("path") let fs = require("fs") fs.readdir(__dirname,(error,files) =>{ console.log(files) }) 输出:[ '00-uplaodFile', '01-uplaodFile', '01.js' ] ``` #### 同步读取目录 `fs.readdirSync(path,options)` + 第一个参数path:目录路径 + 第二个参数options: string或则Object,string类型表示编码方式(utf8) ```js let path = require("path") let fs = require("fs") let files = fs.readdirSync(__dirname) console.log(files) 输出:[ '00-uplaodFile', '01-uplaodFile', '01.js' ] ``` #### 异步删除目录 `fs.rmdir(path,callback())` + 第一个参数path:目录路径 + 第二个参数callback:回调函数,回到函数error对象参数,函数执行的错误信息,如果为null则表示函数执行正常。 ```js let path = require("path") let fs = require("fs") fs.rmdir(path.join(__dirname, "00-uplaodFile"), (err) => { console.log(err) }) 输出:null ``` #### 同步删除目录 `fs.rmdirSync(path,callback())` + 第一个参数path:目录路径 + 第二个参数callback:回调函数,回到函数error对象参数,函数执行的错误信息,如果为null则表示函数执行正常。 ```js let path = require("path") let fs = require("fs") fs.rmdirSync(path.join(__dirname, "01-uplaodFile")) 输出:null ``` ### 文件目录操作模块示例 ```js let path = require("path") let fs = require("fs") let dataInit = { projectName: "myDemo", data: [{ name: "img", type: "dir" }, { name: "css", type: "dir" }, { name: "js", type: "dir" }, { name: "index.html", type: "file" }] } let content = ` <html> <head></head> <body> <h2>你好!江西</h2> </body> </html> ` fs.mkdir(path.join(__dirname, dataInit.projectName), (err) => { if (err) { console.log(err) return } dataInit.data.forEach((item) => { if (item.type == "dir") { fs.mkdir(path.join(__dirname, dataInit.projectName, item.name), (error) => { if (error) { console.log(error) return } }) } else if (item.type == "file") { fs.writeFile(path.join(__dirname, dataInit.projectName, item.name), content, (error) => { if (error) { console.log(error) return } }) } }); }) ``` ### 附加说明 #### node.js中文件夹参数mode常用值 |编号|说明| |--|--| |0777|任何人可读写| |0600|所有者可读写,其他人没有任何权限| |0644|所有者可读写,其他人只读| |0755|所有者所有权限,其他所有人可读和执行| |0740|所有者所有权限,所有者所在的组只读|
扫一扫手机看
点击排行
windows 文件资源管理器使用
Layui 弹窗open使用说明
SQL Server 中字符串函数使用
C# 使用QQ邮箱代理做邮件接收功能
SQL Server关于apply的两种形式cross apply 和 outer apply
ASP.NET MVC 模型的自定义验证
nvm安装及常用命令
SQL Server 中数据类型转换
SQL Server 中WITH AS短语的使用
IE浏览器下AJAX缓存问题导致数据不更新的解决办法
订阅号