J'ai besoin de passer un fichier texte dans le terminal puis d'en lire les données, comment puis-je faire cela ?
node server.js file.txt
Comment passer dans le chemin du terminal, comment lire ça de l'autre côté ?
J'ai besoin de passer un fichier texte dans le terminal puis d'en lire les données, comment puis-je faire cela ?
node server.js file.txt
Comment passer dans le chemin du terminal, comment lire ça de l'autre côté ?
Vous pouvez utiliser readstream et pipe pour lire le fichier ligne par ligne sans lire tout le fichier en mémoire une seule fois.
var fs = require('fs'),
es = require('event-stream'),
os = require('os');
var s = fs.createReadStream(path)
.pipe(es.split())
.pipe(es.mapSync(function(line) {
//pause the readstream
s.pause();
console.log("line:", line);
s.resume();
})
.on('error', function(err) {
console.log('Error:', err);
})
.on('end', function() {
console.log('Finish reading.');
})
);
Je poste un exemple complet que j'ai enfin réussi à faire fonctionner. Ici je lis dans un fichier rooms/rooms.txt
partir d'un script rooms/rooms.js
var fs = require('fs');
var path = require('path');
var readStream = fs.createReadStream(path.join(__dirname, '../rooms') + '/rooms.txt', 'utf8');
let data = ''
readStream.on('data', function(chunk) {
data += chunk;
}).on('end', function() {
console.log(data);
});
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.