我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Node.js如何使用流实现读写同步边读边写功能

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Node.js如何使用流实现读写同步边读边写功能

这篇文章主要为大家展示了“Node.js如何使用流实现读写同步边读边写功能”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Node.js如何使用流实现读写同步边读边写功能”这篇文章吧。

具体代码如下所示:

//10个数 10个字节,每次读4b,写1b
let fs=require("fs");
function pipe(source,target) {
  //先创建可读流,再创建可写流
  //先读一次,rs.on(data)
  //将读到的类容写入目标中 ,返回布尔值,如果是ture,继续写,默认情况应该是false,暂停读取
  //ws.on('drain'),抽干后,回复读取
  //监听读取文件完毕后,关闭读取rs.on('end')
  let rs=fs.createReadStream(source,{highWaterMark:4});
  let ws=fs.createWriteStream(target,{highWaterMark:1});
  rs.on('data',function (chunk) { //chunk是buffer类型
    if(ws.write(chunk)===false){
      //写不下,停止读取
      rs.pause()
    }
  });
  ws.on('drain',function () {
    //每次写的内存干了就恢复读取
    console.log("111");
    rs.resume() //恢复读取
  });
  rs.on('end',function (chunk) {
    ws.end();
  })
}
pipe('./1.txt','./3.txt')

上面这种写法比较繁琐,大家看完后,忘记就行

node.js提供给我们内置方法pipe

//10个数 10个字节,每次读4b,写1b
let fs=require("fs");
function pipe(source,target) {
  let rs=fs.createReadStream(source,{highWaterMark:4});
  let ws=fs.createWriteStream(target,{highWaterMark:1});
  //可读流到可写流,异步操作,可以保证内存不会被淹没,读一点,写一点
  // 如果想看文件类容,使用readFile

  rs.pipe(ws);
}
pipe('./1.txt','./4.txt')

直接将读取的流操作到写入流中,还是异步操作

以上是“Node.js如何使用流实现读写同步边读边写功能”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Node.js如何使用流实现读写同步边读边写功能

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Node.js 使用流实现读写同步边读边写功能

废话不多说了,直接给大家贴代码了,具体代码如下所示://10个数 10个字节,每次读4b,写1b let fs=require("fs"); function pipe(source,target) {//先创建可读流,再创建可写流//先读
2022-06-04

Node.js怎么使用流实现读写同步边读边写功能

本篇内容主要讲解“Node.js怎么使用流实现读写同步边读边写功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Node.js怎么使用流实现读写同步边读边写功能”吧!具体代码如下所示://10个
2023-06-17

node.js 利用流实现读写同步,边读边写的方法

如下所示://10个数 10个字节,每次读4b,写1b let fs=require("fs"); function pipe(source,target) {//先创建可读流,再创建可写流//先读一次,rs.on(data)//将读到的类
2022-06-04

Node.js怎么使用流实现边读边写功能

这篇“Node.js怎么使用流实现边读边写功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Node.js怎么使用流实现边读
2023-07-04

如何使用redis读写数据同步

Redis是一个内存数据库,它支持非阻塞I/O操作,并且具有非常高的读写性能。在Redis中,数据的读写是同步进行的,所以不需要特别的操作来实现读写数据的同步。读数据:使用Redis的GET命令可以从Redis中读取数据。GET命令的语法如
2023-09-01

使用SpringBoot 如何实现一个MySQL 读写分离功能

本篇文章给大家分享的是有关使用SpringBoot 如何实现一个MySQL 读写分离功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。主从同步的局限性: 这里分为主数据库和从数
2023-06-06

如何使用 Golang 扩展文件读写功能?

如何扩展 go 文件读写功能:使用 io 包进行通用输入输出操作,例如从文件读取到内存缓冲区。使用 os 包进行操作系统文件系统操作,例如创建、删除和重命名文件。结合使用这些包进行复杂的操作,例如读取文件并统计单词数量。如何使用 Golan
如何使用 Golang 扩展文件读写功能?
2024-05-16

C语言如何实现BMP图像读写功能

这篇文章给大家分享的是有关C语言如何实现BMP图像读写功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。C语言实现BMP图像的读写对于刚接触数字图像的同学,应该都有一个疑问,如何把一个BMP格式的图像用纯C语言读
2023-06-14

AmazonAurora的读写分离功能如何实现和配置

Amazon Aurora的读写分离功能可以通过创建一个只读的数据库实例来实现。在Amazon Aurora中,可以通过设置一个只读的数据库实例,并将读取操作路由到该实例来实现读写分离。要配置Amazon Aurora的读写分离功能,可以
AmazonAurora的读写分离功能如何实现和配置
2024-04-09

SpringBoot使用JPA如何实现读写分离

今天就跟大家聊聊有关SpringBoot使用JPA如何实现读写分离,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。JPA是什么JPA(Java Persistence API)是Sun
2023-05-31

如何在 Golang 中使用管道实现文件读写?

通过管道进行文件读写:创建一个管道从文件读取数据并通过管道传递从管道中接收数据并处理将处理后的数据写入文件使用 goroutine 并发执行这些操作以提高性能如何在 Golang 中使用管道实现文件读写?管道在 Go 中是一种有用的并发原
如何在 Golang 中使用管道实现文件读写?
2024-05-15

Linux下如何使用MaxScale实现数据库读写分离

这篇文章主要介绍Linux下如何使用MaxScale实现数据库读写分离,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MaxScale是maridb开发的一个mysql数据中间件,其配置简单,能够实现读写分离,并且可以
2023-06-27

如何使用vue实现手写签名功能

本篇内容介绍了“如何使用vue实现手写签名功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 个人实现截图:安装:npm install v
2023-06-20

如何在Spring中使用MyBatis实现数据的读写分离

如何在Spring中使用MyBatis实现数据的读写分离?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。其实现原理如下:通过Spring AOP对dao层接口进行
2023-05-31

如何使用Python实现微信消息的一键已读功能

这篇文章主要介绍了如何使用Python实现微信消息的一键已读功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。关键词微信消息一键已读 微信消息批量已读 微信消息全部已读1、微
2023-06-15

编程热搜

目录