เราสามารถอ่านไฟล์ข้อความและคืนค่าเนื้อหาเป็นอาร์เรย์ (Array) โดยใช้ Node.js เราสามารถใช้เนื้อหาอาร์เรย์นี้เพื่อประมวลผลบรรทัดต่างๆ หรือเพื่อการอ่านอย่างเดียว เราสามารถใช้โมดูล 'fs' เพื่อจัดการการอ่านไฟล์ เมธอด fs.readFile() และ fs.readFileSync() ใช้สำหรับอ่านไฟล์ เรายังสามารถอ่านไฟล์ข้อความขนาดใหญ่ด้วยวิธีนี้ได้
ตัวอย่าง (ใช้ readFileSync())
สร้างไฟล์ชื่อ fileToArray.js และคัดลอกโค้ดด้านล่าง หลังจากสร้างไฟล์แล้ว ใช้คำสั่งต่อไปนี้เพื่อรันโค้ด:
node fileToArray.js
fileToArray.js
// นำเข้าโมดูล fs
let fs = require("fs")
// เริ่มต้น readFileLines ด้วยชื่อไฟล์
const readFileLines = filename =>
fs.readFileSync(filename)
.toString('UTF8')
.split('\n');
// เรียกฟังก์ชัน readFiles ด้วยชื่อไฟล์
let arr = readFileLines('tutorialsPoint.txt');
// แสดงอาร์เรย์ตอบกลับ
console.log(arr);
ผลลัพธ์
C:\home\node>> node fileToArray.js [ 'Welcome to TutorialsPoint !', 'SIMPLY LEARNING', '' ]
ตัวอย่าง (ใช้ async readFile())
ลองดูตัวอย่างอีกหนึ่งกรณี:
// นำเข้าโมดูล fs
var fs = require("fs")
// เริ่มต้น readFileLines ด้วยชื่อไฟล์
fs.readFile('tutorialsPoint.txt', function(err, data) {
if(err) throw err;
var array = data.toString().split("\n");
for(i in array) {
// แสดงอาร์เรย์ตอบกลับ
console.log(array[i]);
}
});
ผลลัพธ์
C:\home\node>> node fileToArray.js Welcome to TutorialsPoint ! SIMPLY LEARNING