先看使用node提供的readline的常用方式是否可以实现我们的需求 import * as fs from 'fs' import * as readline from 'readline' async function index() { // 生成要读取文件的 interface const file_interface = readline.createInterface({ input: fs.createReadStream('/Users/lusun/Downloads/test.txt') ...
const app = new Koa(); app.use(async(ctx, next) => { const res = ctx.res; fs.readFile('./big.txt', (err, data) => { if (err) { throw err; } else { res.end(data); } }) }); app.listen(3001, () => { console.log('listening on 3001'); }); 1. 2. 3. 4. 5...
由以上介绍可知如果我们要读取的文件可能会很大(比如视频等大文件), 我们一开始就要使用fs.createReadStream(), 其实如果我们需要对文件进行解析, 比如要对简历等文件进行逐行解析提取关键语料, 我们可以使用node的readline模块, 此时我们就可以对文件进行逐行读取并解析, 如下案例:const fs = require("fs");const ...
then((value) => console.log(value)); const stat = util.promisify(require('fs').stat); async function callStat() { const stats = await stat('.'); console.log(`This directory is owned by ${stats.uid}`); } callStat(); util: add util.promisify()...
async function readFileList() { let file1 = await fsRead('hello01.txt'); console.log('1:' + file1.toString()) let file2 = await fsRead('hello02.txt'); console.log('2:' + file2.toString()) let file3 = await fsRead('hello03.txt'); ...
readline: 读取stdin 的一行内容,可以读取、增加、 删除我们命令行中的内容\ os: 操作系统层面的一些api,例如告诉你当前系统类 型及一些参数 vm: 一个专⻔处理沙箱的虚拟机模块,底层主要来调 用 v8 相关 api 进行代码解析。 V8 引擎: 引擎只是解析层面,具体的上层还有许多具体环境的封装。
node -pe"require('repl')._builtinLibs"["assert","buffer","child_process","cluster","crypto","dgram","dns","domain","events","fs","http","https","net","os","path","punycode","querystring","readline","repl","stream","string_decoder","tls","tty","url","util","v8","vm"...
下面是带有可读流的 readline 的代码示例: constevents=require('events');constfs=require('fs');constreadline=require('readline');(asyncfunctionprocessLineByLine(){try{constrl=readline.createInterface({input:fs.createReadStream('broadband.sql'),crlfDelay:Infinity});rl.on('line',(line)=>{console....
router.post(api.validVip,asyncctx=>{ctx.cookies.set('vid','xuxiaoxi',{maxAge:24*3600*1000});}); 以上我们随便设置了一个有效期为1天的cookie, 那如果业务有变动, 需要在有效期内清空此cookie, 我们该如何处理呢? 解析来给出一个相对可用的解决方案: ...
myAsyncTimeoutFn('just a silly string argument').then(() =>{ console.log('Final callback is here') }) 这个对象有内有一个特别的方法then。 执行这个方法then,会设置回调_callback变量。 最后调用event queue的任务setTimeout()。执行_callback()。