91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js中readline如何實現逐行讀取、寫入文件內容

發布時間:2021-06-26 15:09:38 來源:億速云 閱讀:375 作者:小新 欄目:web開發

這篇文章主要介紹了Node.js中readline如何實現逐行讀取、寫入文件內容,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

什么是Readline

Readline是Node.js里實現標準輸入輸出的封裝好的模塊,通過這個模塊我們可以以逐行的方式讀取數據流。使用require(“readline”)可以引用模塊。

效果圖如下:

左邊1.log 為源文件

右邊1.readline.log為復制后的文件

下邊為命令行輸出

Node.js中readline如何實現逐行讀取、寫入文件內容

實現方式一:

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...'); 
});

實現方式二:

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...'); 
});

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Node.js中readline如何實現逐行讀取、寫入文件內容”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

抚宁县| 正阳县| 巴楚县| 浦北县| 南充市| 广东省| 山东省| 浏阳市| 漠河县| 八宿县| 阳新县| 东乡族自治县| 建水县| 新田县| 马公市| 庆云县| 西吉县| 双鸭山市| 田林县| 龙门县| 普洱| 科技| 阿拉尔市| 苏尼特左旗| 新野县| 孝昌县| 汉川市| 巩义市| 沙坪坝区| 伊宁市| 射洪县| 原阳县| 临海市| 巢湖市| 嘉义县| 岳普湖县| 施秉县| 德安县| 博野县| 潼南县| 双城市|