Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Membaca Baris Fail demi Baris dalam Node.js?

Bagaimanakah Saya Boleh Membaca Baris Fail demi Baris dalam Node.js?

Patricia Arquette
Lepaskan: 2024-12-06 22:11:13
asal
557 orang telah melayarinya

How Can I Read a File Line by Line in Node.js?

Baca Fail Satu Baris pada Satu Masa dalam Node.js

Node.js menyediakan mekanisme yang cekap untuk memproses fail besar satu baris pada satu masa. Keupayaan ini penting untuk operasi intensif memori atau apabila berurusan dengan fail yang melebihi memori pelayan.

Untuk membaca fail baris demi baris dalam Node.js, anda boleh menggunakan pendekatan berikut:

Menggunakan Modul Teras baris baca (Node.js v0.12 )

Tawaran Node.js modul teras baris baca untuk lelaran baris fail yang lancar. Pertimbangkan kod berikut:

const fs = require('fs');
const readline = require('readline');

async function processLineByLine() {
  const fileStream = fs.createReadStream('input.txt');

  const rl = readline.createInterface({
    input: fileStream,
    crlfDelay: Infinity
  });
  // Note: we use the crlfDelay option to recognize all instances of CR LF
  // ('\r\n') in input.txt as a single line break.

  for await (const line of rl) {
    // Each line in input.txt will be successively available here as `line`.
    console.log(`Line from file: ${line}`);
  }
}

processLineByLine();
Salin selepas log masuk

Menggunakan Pakej 'readline'

Untuk versi Node.js sebelum v0.12, pakej 'readline' menyediakan penyelesaian alternatif:

var lineReader = require('readline').createInterface({
  input: require('fs').createReadStream('file.in')
});

lineReader.on('line', function (line) {
  console.log('Line from file:', line);
});

lineReader.on('close', function () {
    console.log('all done, son');
});
Salin selepas log masuk

Dalam kedua-dua pendekatan, baris terakhir dibaca dengan betul walaupun tanpa baris baharu mengekori aksara.

Pertimbangan Tambahan

  • Pastikan bahawa laluan fail yang disediakan dalam 'createReadStream()' adalah tepat.
  • Kendalikan ralat dengan sewajarnya menggunakan cuba tangkap blok atau pendengar acara.
  • Modul baris baca acara 'tutup' dipancarkan apabila penghujung fail dicapai atau ralat berlaku.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Baris Fail demi Baris dalam Node.js?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan