Hands-on: Ler arquivo linha a linha

Hands-on: Ler arquivo linha a linha

Tulio Faria
Tulio Faria8 de maio de 2017
Neste hands-on, vamos ver como conseguimos utilizar o readline em conjunto com Readable Stream para ler linhas de um arquivo texto.
Como faremos isso?
Primeiramente vamos importar o headline (que já faz parte do core do node) e o FS (file System). Em seguida, vamos ler o arquivo com o readable.

const readline = require('readline') const fs = require('fs') const readable = sf.createReadStream('arquivo.html')

Vamos criar uma instancia do readline e no imput vamos passar o readable

const rl = readline.creatInterface({ input: readable, output: process.stdout })

Mas para que isso serve?
Isso é legal, pois podemos fazer assim por exemplo: rl

.on('line', (line) => { console.log('>>>', line) })

Se rodarmos este código, o node vai mostrar o HTML inteiro linha a linha.
Para provar realmente que ele esta fazendo isso, podemos fazer o seguinte:

rl.on('line', (line) => { console.log('>>>', line.toUpperCase()) })

Então o node retornará tudo em maiúsculo. Neste código, também podemos ler um CSV, bastaria eu processar a linha do CSV dentro do console.log e temos uma forma de rodar o arquivo sem precisar gastar muita memória.
Conclusão
Quando temos muitos dados, não é necessário jogar na memória. Utilizando essa forma, a leitura vai ser bem mais vantajosa.
Confira o video:
bNKi8_J4TLI
Assistir vídeo
Curta o DevPleno no Facebook, inscreva-se no canal e não se esqueça de cadastrar seu e-mail para não perder as novidades. Ah, fique à vontade para deixar suas dúvidas e sugestões nos comentários. Abraço!
Tulio Faria
Autor
Tulio Faria8 de maio de 2017

Últimas do Blog