NodeJs学习(三) Fs模块
Fs模块
- fs.stat 检测是文件还是目录
//目录 fs.stat('html', function(err, stats) { if (err) { console.log(err); return false; } console.log('文件:' + stats.isFile()); console.log('目录:' + stats.isDirectory()); }) //文件 fs.stat('index.txt', function(err, stats) { if (err) { console.log(err); return false; } console.log('文件:' + stats.isFile()); console.log('目录:' + stats.isDirectory()); })
2.fs.mkdir 创建目录
//接收参数: //path 将创建的目录路径 //mode 目录权限(读写权限),默认0777 //callback 回调,传递异常参数err fs.mkdir('css', function(err) { if (err) { console.log(err); return false; } console.log('创建目录成功'); })
3.fs.writeFile 创建写入文件
//filename (String) 文件名称 //data (String | Buffer) 将要写入的内容,可以使字符串 或 buffer数据。 //options (Object) option数组对象,包含: //· encoding (string) 可选值,默认 ‘utf8′,当data使buffer时,该值应该为 ignored。 //· mode (Number) 文件读写权限,默认值 438 //· flag (String) 默认值 ‘w' //callback {Function} 回调,传递一个异常参数err。 fs.writeFile('t.txt', '你好nodejs 覆盖', 'utf8', function(err) { if (err) { console.log(err); return false; } console.log('写入成功'); })
4.fs.appendFile 追加文件
fs.appendFile('t1.txt', '这是写入的内容', function(err) { if (err) { console.log(err); return false; } console.log('写入成功'); })
5.fs.readFile 读取文件
fs.readFile('t1.txt', function(err, data) { if (err) { console.log(err); return false; } //console.log(data); console.log(data.toString()); })
6.fs.readdir 读取目录
fs.readdir('html', function(err, data) { if (err) { console.log(err); return false; } console.log(data); })
7.fs.rename 重命名
// 1. 改名 2. 剪切文件 fs.rename('html/index.html', 'html/news.html', function(err) { if (err) { console.log(err); return false; } console.log('修改名字成功'); })
8.fs.rmdir 删除目录
fs.rmdir('t', function(err) { if (err) { console.log(err); return false; } console.log('删除目录成功'); }) // ENOENT: no such file or directory, rmdir rmdir 这个方法只能删除目录 fs.rmdir('index.txt', function(err) { if (err) { console.log(err); return false; } console.log('删除目录成功'); })
9.fs.unlink 删除文件
fs.unlink('index.txt', function(err) { if (err) { console.log(err); return false; } console.log('删除文件成功'); })
10.fs.createReadStream 从文件流中读取数据
const fs = require('fs') //流的方式读取文件 let readStream = fs.createReadStream('input.txt'); let str = ''; /*保存数据*/ let count = 0; /*次数*/ readStream.on('data', function(chunk) { str += chunk; count++; }) //读取完成 readStream.on('end', function(chunk) { console.log(count); console.log(str); }) //读取失败 readStream.on('error', function(err) { console.log(err); })
11.fs.createWriteStream 写入文件
let fs = require("fs"); let data = '我是从数据库获取的数据,我要保存起来11\n'; // 创建一个可以写入的流,写入到文件 output.txt 中 let writerStream = fs.createWriteStream('output.txt'); for (let i = 0; i < 100; i++) { writerStream.write(data, 'utf8'); } //标记写入完成 writerStream.end(); writerStream.on('finish', function() { console.log('写入完成'); }) //失败 writerStream.on('error', function() { console.log('写入失败'); })
12.管道流
let fs = require("fs"); // 创建一个可读流 let readerStream = fs.createReadStream('input.txt'); // 创建一个可写流 let writerStream = fs.createWriteStream('output.txt'); // 管道读写操作 // 读取 input.txt 文件内容,并将内容写入到 output.txt 文件中 readerStream.pipe(writerStream); console.log("程序执行完毕");
学习使我快乐 ~ 明天见,总是摸不懂这个写的格式,好丑啊现在这样。
相关推荐
JamesRayMurphy 2020-05-25
starzhangkiss 2020-04-19
普罗旺斯的梦 2020-04-09
始作俑者 2020-01-19
普罗旺斯的梦 2020-01-01
xyggsddu 2019-12-26
aihenaichadeyun 2019-12-20
rareli 2019-12-16
始作俑者 2019-12-13
普罗旺斯的梦 2019-11-06
fm00 2019-11-01
普罗旺斯的梦 2019-09-13
普罗旺斯的梦 2019-09-06
kaikai 2018-11-28
范群松 2019-08-30
codingker 2019-07-11
fuziwang 2019-07-01
普罗旺斯的梦 2019-06-29