Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie readline Inhalte Zeile für Zeile liest und schreibt

php中世界最好的语言
Freigeben: 2018-04-12 15:10:22
Original
4204 Leute haben es durchsucht

Dieses Mal werde ich Ihnen readline zeigen, wie Sie Inhalte Zeile für Zeile lesen und schreiben und Vorsichtsmaßnahmen zum Lesen und Schreiben von Inhalten Zeile für Zeile mit readline Was sind das? Hier sind tatsächliche Fälle.

In diesem Artikel werden zwei Implementierungen des zeilenweisen Lesens mit readline vorgestellt und wie folgt mit allen geteilt:

Was ist Readline?

Readline ist ein gepacktes Modul in Node.js, das die Standardeingabe und -ausgabe implementiert. Über dieses Modul können wir den Datenstrom Zeile für Zeile lesen. Module können mit require("readline") referenziert werden.

Die Darstellung ist wie folgt:

1.log auf der linken Seite ist die Quelldatei

1.readline.log rechts ist die kopierte Datei

Das Folgende ist die Befehlszeilenausgabe

Implementierungsmethode eins:

var readline = require('readline'); 
var fs = require('fs'); 
var os = require('os'); 
var fReadName = './1.log'; 
var fWriteName = './1.readline.log'; 
var fRead = fs.createReadStream(fReadName); 
var fWrite = fs.createWriteStream(fWriteName); 
var objReadline = readline.createInterface({ 
 input: fRead, 
// 这是另一种复制方式,这样on('line')里就不必再调用fWrite.write(line),当只是纯粹复制文件时推荐使用 
// 但文件末尾会多算一次index计数 sodino.com 
// output: fWrite, 
// terminal: true 
}); 
 
 
var index = 1; 
objReadline.on('line', (line)=>{ 
 var tmp = 'line' + index.toString() + ':' + line; 
 fWrite.write(tmp + os.EOL); // 下一行 
 console.log(index, line); 
 index ++; 
}); 
 
objReadline.on('close', ()=>{ 
 console.log('readline close...'); 
});
Nach dem Login kopieren

Implementierungsmethode zwei:

var readline = require('readline'); 
var fs = require('fs'); 
var os = require('os'); 
 
var fReadName = './1.log'; 
var fWriteName = './1.readline.log'; 
var fRead = fs.createReadStream(fReadName); 
var fWrite = fs.createWriteStream(fWriteName); 
 
var enableWriteIndex = true; 
fRead.on('end', ()=>{ 
 console.log('end'); 
 enableWriteIndex = false; 
}); 
 
var objReadline = readline.createInterface({ 
 input: fRead, 
 output: fWrite, 
 terminal: true 
}); 
 
var index = 1; 
fWrite.write('line' + index.toString() +':'); 
objReadline.on('line', (line)=>{ 
 console.log(index, line); 
 if (enableWriteIndex) { 
 // 由于readline::output是先写入后调用的on('line')事件, 
 // 所以已经读取文件完毕时就不需要再写行号了... sodino.com 
 index ++; 
 var tmp = 'line' + index.toString() + ':'; 
 fWrite.write(tmp); 
 } 
}); 
objReadline.on('close', ()=>{ 
 console.log('readline close...'); 
});
Nach dem Login kopieren

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie hier Verwandte Artikel auf der php-chinesischen Website!

Empfohlene Lektüre:

Vuex-Mutationen und -Aktionen im Detail Erklärung der Verwendung

So verwenden Sie Platzhalter in Vue

Das obige ist der detaillierte Inhalt vonWie readline Inhalte Zeile für Zeile liest und schreibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!