一. _node中fs核心模块
Node.js中没有BOM和DOM对象,浏览器不认识node代码
浏览器中的JavaScript没有文件操作的能力但是Node中的JavaScript具有文件操作的能力
fs时file-system的简写,就是文件系统的意思,在Node中如果想要进行文件操作就必须引入fs这个你核心模块在fs这个核心模块中就提供了所有的文件操作相关的API
fs核心模块
1.使用require方法加载fs核心模块
var fs =require('fs')
2.读取文件 fs.readFile()
第一个参数就是要读取的文件路径
第二个参数是一个回调函数
成功:data 数据, error null
失败:data null, error 错误对象
fs.readFile('C:/桌面/node/fs/111.js', function (err, data) {
if (err) {
console.log('404 Not Found');
} else {
console.log(data);
console.log(data.toString());
}
})
如果没有toString()的输出十六进制数据
3.写入文件 fs.writeFile()(appendFile 用法一样)
第一个参数:文件路径(文件必须存在)
第二个参数:文件内容
第三个参数:回调函数
var fs = require('fs')
fs.writeFile('./node/111.txt', 'hello nodejs', function (err) {
if(err){
console.log('404 Not Found');
}
console.log('成功');
})
4.读取目录 fs.readdir ()
参数1:文件夹路径
参数2:回调函数(err null files存在类型数组,err 存在files undefiined)
fs.readdir('C:/桌面/node/fs', (err, files) => {
if (err) {
console.log('404 Not Found');
} else {
console.log(files);
}
})
5.对文件操作
重命名 fs.rename()
参数1:原文件路径及名称
参数2:新命名文件路径及名称
参数3:回调函数(err null:执行成功 err 不为空:执行失败)
fs.rename('C:/桌面/node/fs/222.js', 'C:/桌面/node/fs/111.js', function (err) {
if (err) {
console.log('404 Not Found');
} else {
console.log('修改成功');
}
})
删除目录 fs.rmdir()
删除文件 fs.uplink()
同上
6.检测文件还是目录 fs.stat()
fs.stat('C:/桌面/node/fs/111.js', (err, data) => {
if (err) {
console.log('404 Not Found');
}
else {
console.log(data);
console.log(data.isFile());
}
})
data返回的是一个Stats对象
data.isFile()是文件返回true,不是文件返回false
7.创建目录 fs.mkdir()
参数1:新建目录的路径
参数2;err null 新建成功,err 不为空 新建失败
fs.mkdir('C:/桌面/node/新建目录', (err) => {
if (err) {
console.log('404 Not Found');
}
else {
console.log('新建成功');
}
})