Node.js 简单文件、流式文件的写入

ZCQ
日期:2021年1月30日

简单文件的写入

fs.writeFile(file, data[, options], callback)
fs.writeFileSync(file, data[, options])
-file 要操作的文件的路径
-data 要写入的数据
-options 选项,可以对写入进行一些设置
-callback 当写入完成后执行的函数

文件的打开状态:

模式说明
r读取文件,文件不存在则异常
r+读写文件,文件不存在则异常
rs在同步模式下打开文件用于读取
rs+在同步模式下打开文件用于读写
w打开文件用于写操作,如果文件不存在则创建,如果文件存在则截断
wx打开文件用于写操作,如果存在则打开失败
w+打开文件用于读写,如果不存在则创建,如果存在则截断
wx+打开文件用于读写,如果存在则打开失败
a打开文件用于追加,如果不存在则创建
ax打开文件用于追加,如果路径存在则失败
a+打开文件用于读取和追加,如果不存在则创建文件
ax+打开文件用于读取和追加,如果路径存在则失败

一般常用的有w , r , a

实例:

var fs=require("fs");
fs.writeFile("hi2.txt","这是通过fs.writeFile写入的内容",function(err){
    if(!err){
        console.log("写入成功");

    }
})

同步、异步、简单文件的写入都不适合大文件的写入,性能较差,容易导致内存溢出
流式文件的写入克服了上述缺点

流式文件的写入

创建一个可写流:
fs.createWriteStream(path[, options])
-创建一个可写流
-path:文件的路径
-options 配置的参数


//流式文件的写入
var fs=require("fs");
var ws=fs.createWriteStream("hi3.txt");
ws.write("通过可写流写入文件的内容");

//通过监听流的open和close实践来监听流的打开和关闭
ws.once("open",function(){
    console.log("流打开了");
});

ws.end(); //注意,用end(),不用close()

ws.once("close",function(){
    console.log("流关闭了");
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

中南大学苹果实验室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值