微信小程序开发之 Node.js (基础七) Stream流 & (基础八) exports模块系统 ...
凌雪 2018-10-10 来源 :网络 阅读 1738 评论 0

摘要:本文将带你了解微信小程序开发之 Node.js (基础七) Stream流 & (基础八) exports模块系统 ...,希望本文对大家学微信有所帮助。

本文将带你了解微信小程序开发之 Node.js (基础七) Stream流 & (基础八) exports模块系统 ...,希望本文对大家学微信有所帮助。


微信小程序 Node.js (基础七) Stream(流)Stream   是一个抽象接口,Node 中有很多对象实现了这个接口。 Stream 有四种流类型: - Readable - 可读操作。 - Writable - 可写操作。 - Duplex - 可读可写操作. - Transform - 操作被写入数据,然后读出结果。 - Stream 对象都是 EventEmitter 的实例。常用的事件有: - data - 当有数据可读时触发。 - end - 没有更多的数据可读时触发。 - error - 在接收和写入过程中发生错误时触发。 - finish - 所有数据已被写入到底层系统时触发。读取var fs =   require("fs")
    var data= ""
   
    var readerStreama = fs.createReadStream("input.txt")
    readerStreama.setEncoding('UTF8')
   
    readerStreama.on("data",function(chunk){
    data+= chunk;
    })
   
    readerStreama.on("end",function(){
        console.log(data);
    })
   
    readerStreama.on("error",function(err){
    console.log(err.stack)
    })
   
    console.log("程序执行完成")1234567891011121314151617181912345678910111213141516171819写入var fs =   require("fs");
    var data = 'www.csdn.net';
   
    // 创建一个可以写入的流,写入到文件   output.txt 中
var writerStream =   fs.createWriteStream('output.txt');
   
    // 使用 utf8 编码写入数据
writerStream.write(data,'UTF8');
   
    // 标记文件末尾
writerStream.end();
   
    // 处理流事件 --> data,   end, and error
    writerStream.on('finish', function() {
        console.log("写入完成。");
    });
   
    writerStream.on('error', function(err){
       console.log(err.stack);
    });
   
    console.log("程序执行完毕");1234567891011121314151617181920212212345678910111213141516171819202122管道流var fs =   require("fs");
   
    // 创建一个可读流
var readerStream =   fs.createReadStream('input.txt');
   
    // 创建一个可写流
var writerStream =   fs.createWriteStream('output.txt');
   
    // 管道读写操作
// 读取 input.txt 文件内容,并将内容写入到 output.txt 文件中
readerStream.pipe(writerStream);
   
    console.log("程序执行完毕");1234567891011121312345678910111213链式流链式是通过连接输出流到另外一个流并创建多个对个流操作链的机制。链式流一般用于管道操作。压缩var fs = require("fs");
    var zlib = require('zlib');
   
    // 压缩 input.txt 文件为 input.txt.gz
    fs.createReadStream('input.txt')
      .pipe(zlib.createGzip())
    .pipe(fs.createWriteStream('input.txt.gz'));
   
    console.log("文件压缩完成。");123456789123456789解压缩var fs = require("fs");
    var zlib = require('zlib');
   
    // 解压 input.txt.gz 文件为 input.txt
    fs.createReadStream('input.txt.gz')
      .pipe(zlib.createGunzip())
    .pipe(fs.createWriteStream('input.txt'));
   
    console.log("文件解压完成。");123456789123456789微信小程序 Node.js (基础八) exports模块系统一个 Node.js 文件就是一个模块,这个文件可能是JavaScript 代码、JSON 或者编译过的C/C++   扩展。// main.js
    var hello = require("./hello")
    hello.sayHi()123123// hello.js
    exports.sayHi  = function(){
    console.log("Hello World")
    }// 将对象封装到模块中function   sayHi(){
    this.hi = function(){
        console.log("Hello   World") 
    }
    }
    module.exports = sayHivar Hello = require("./hello")
    var hello = new Hello()
    hello.hi()    

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之微信频道!

本文由 @凌雪 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved