node--fs
1、fs模块内置方法
1)stat
检测是文件还是目录
fs.stat(fileAddress,(err,stats)=>{
//err 出错信息
//stats.isFile() 该东西是文件吗
//stats.isDirectory() 该东西是目录吗
//返回布尔值
})
2)mkdir
创建目录
fs.mkdir(directoryName,mode,callback)
//directoryName:所创建目录的名称
//mode:目录读写权限,默认0777
//callback:回调,含参数error
fs.mkdir('css',(err)=>{...})
不可建立同名目录
3)writeFile
写入文件
fs.writeFile(...)
参数列表:

不存在自动创建,同名自动覆盖
4)appendFile
追加文件内容
参数同3)相同
若不存在直接创建,若已存在直接在相应文件内容中追加
5)readFile
读取文件
参数列表 3)中除了data外
fs.readFile(path,callback(err,data))
返回Buffer格式,通过toString方法来转换为字符串
6)readdir
读取目录
参数列表 3)中除了data外
fs.readdir(path,callback(err,data))
读取文件下的所有目录和文件
7)rename
重命名或剪切文件
fs.rename(path,samePathWithNewName,callback(err))
剪切文件并放到指定目录:
fs.rename(path,differentPath,callback(err))
8)
删除目录
fs.rmdir()
fs.rmdir(path,cb(err))
不可以删文件
9)unlink
删除文件
fs.unlink(path,cb(err))
//注意:文件的读取等是异步操作
10)createReadStream
以文件流的方式读取数据
这种方式是分块读取的
// node通过文件流的方式读取数据
const fs = require('fs')
let str = '' // 用于保存数据
//创建读取对象,参数是文件路径
const readStream = fs.createReadStream('a.txt')
//每完成一块数据的读取,广播一个data事件,readStream通过on接收
//文件过大时读取多次
readStream.on('data', (chunk) => {
str += chunk
})
//读取完毕。广播一个end事件,通过on接收
readStream.on('end', () => {
console.log(str)
})
//读取失败。广播一个error事件,通过on接收
readStream.on('error', (err) => {
console.log(err)
})
//通过流的方式读取不会卡死
11)通过createWriteStream
通过文件流的方式写入数据,
不追加直接覆盖
// 通过文件流的方式写入数据
const fs = require('fs')
const data = '这是一段数据2'
const writeStream = fs.createWriteStream('b.txt')
writeStream.write(data, 'utf8')
// 标记写入完成,这样才能触发广播finish事件
writeStream.end()
writeStream.on('finish', () => {
console.log('finished')
})
writeStream.on('error', (err) => {
console.log('error occur!' + err)
})
2、管道流
上面的读取流和写入流可以通过pipe方法像倒水一样进行复制转移
node--fs的更多相关文章
- 解决node fs.writeFile 生成csv 文件乱码问题
解决node fs.writeFile 生成csv 文件乱码问题: fs.writeFile('xxx.csv', '\ufeff' + 要传入的数据, {encoding: 'utf8'}); \u ...
- Node+fs+定时器(node-schedule)+MySql
目标:将本人写博客时候的截图保存到桌面的图片 执行保存到指定文件进行整理 并写入数据库 先看最终的目录结构: package.json文件: { "name": "zqz ...
- Node fs, url, http 组合小型的服务器 ( 满足html请求, get, post 传值 )
<script type="text/javascript"> /* * 引入模块 */ var http = require('http'); var url = r ...
- node fs模块
Node.js的文件系统的Api //公共引用 var fs = require('fs'), path = require('path'); 1.读取文件readFile函数 //readFile( ...
- node fs相对路径
如果在js里面使用了node.js的fs,在传入path参数时,如果使用相对路径,按照根目录的层级就是用就好. 比如:目录结构为: a -b -c -c1.js d 在c1.js中调用时,如果需要使用 ...
- Node fs模块异步读取验证并异步写入
console.log("1:开始读成取文件内容...");fs.readFile('./public/2.log',function(err,data){ if(err){ co ...
- Node fs模块同步读取写入追加
JS文件中const fs = require("fs");console.log("开始进入文件读取.."); //同步的写入var data = fs.re ...
- node fs 解决回调地域问题
promisify问题 promisify = require('util).promisify const read = promisify( fs.readFile); read('input.t ...
- Node FS 读取文件中文乱码解决
1:首先保证源文件编码方式为UTF-8 2:读取代码,设置编码方式rs.setEncoding('utf8') var fs = require('fs'); var rs = fs.createRe ...
- node fs 文件/目录 删除
删除文件如下: 过程:先判断文件路径是否存在.读取该文件下所有文件.循环该文件,判断是否是文件夹还是文件. 移除文件夹使用fs.rmdirSync("路径") 移除文件使用fs.u ...
随机推荐
- Linux 运维命令及知识
1.查找当前目录下所有以.tar结尾的文件然后移动到指定目录: find . -name “*.tar” -exec mv {}./backup/ ; 注解:find –name 主要用于查找某个文件 ...
- [USACO09DEC]音符Music Notes (二分、STL)
https://www.luogu.org/problem/P2969 题目描述 FJ is going to teach his cows how to play a song. The song ...
- 监控 Linux 服务器活动的几个命令(watch top ac)
watch.top 和 ac 命令为我们监视 Linux 服务器上的活动提供了一些十分高效的途径. 为了在获取系统活动时更加轻松,Linux 系统提供了一系列相关的命令.在这篇文章中,我们就一起来看看 ...
- 20)PHP,数组的遍历
然后开始使用这2个函数和while循环结构来实现数组遍历: 形式: reset($arr1); while ( list ($key, $value ) = each( $arr1) ) //从数组$ ...
- 37)PHP,获取数据库数据并在html中显示(晋级4)
我的php文件和html文件的位置关系: 然后我的主php文件是b.php,我的那个配置文件是BBB.php,我的html文件是login.html 然后我的b.php代码展示: <?php c ...
- 关联规则之FpGrowth算法
Aprori算法利用频繁集的两个特性,过滤了很多无关的集合,效率提高不少,但是我们发现Apriori算法是一个候选消除算法,每一次消除都需要扫描一次所有数据记录,造成整个算法在面临大数据集时显得无能为 ...
- javascript正则表达式和php匹配 获取文章的 图片集
1.脚本javascript: var str="<a href='05.html'><img src='img/4.jpg' alt='单击查看下一张' />< ...
- python后端面试第二部分:网络编程和并发编程--长期维护
1. 简述 OSI 七层协议. 2. 什么是C/S和B/S架构? 3. 简述 三次握手.四次挥手的流程. 4. 什么是arp协议? 5. TCP和UDP的区别? 6. 什么是局域网和广域网? 7. 为 ...
- 百度AI技术
利用百度提供接口,实现智能语音 语音合成 -- TTS(text to speech) 注册 在 ai.baidu.com 页面中点击 控制台 ,弹出登陆 / 注册页面 创建应用 登陆成功后,点击左侧 ...
- MOOC(7)- case依赖、读取json配置文件进行多个接口请求-setup(4)
unittest封装测试类,setup对每个用例都要执行的函数进行初始化[初始化是自己的叫法] import unittest from day_20200208_mooc.base.interfac ...