Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Menambahkan Data dengan Cekap pada Fail dalam Node.js?

Bagaimana untuk Menambahkan Data dengan Cekap pada Fail dalam Node.js?

Linda Hamilton
Lepaskan: 2024-11-25 08:08:33
asal
134 orang telah melayarinya

How to Efficiently Append Data to a File in Node.js?

Menambah pada Fail dalam Nod: Kaedah Mudah dan Cekap

Apabila bekerja dengan fail log atau mana-mana senario lain di mana data mesti ditambah secara berterusan ke fail sedia ada, adalah penting untuk mengetahui cara untuk menambah tanpa menulis ganti. Begini cara anda boleh mencapainya dalam Node.js.

Masalah Awal:

Percubaan untuk menulis pada fail menggunakan fs.writeFile() menimpa kandungan sedia ada, menjadikan ia tidak sesuai untuk ditambahkan.

tambahFail: The Brute Force Pendekatan

Untuk penambahan yang jarang berlaku, anda boleh menggunakan appendFile, yang membuka pemegang fail baharu setiap kali:

const fs = require('fs');

fs.appendFile('message.txt', 'data to append', function (err) {
  if (err) throw err;
  console.log('Saved!');
});
Salin selepas log masuk

Pengurusan Pemegang Fail untuk Prestasi Optimum

Untuk lampiran berulang pada fail yang sama, lebih cekap menggunakan semula pemegang fail. Begini cara untuk melakukannya:

  1. Buka fail:
const fs = require('fs');

const fd = fs.openSync('message.txt', 'a');
Salin selepas log masuk
  1. Tulis pada fail:

Gunakan fs.write() untuk menambahkan data pada fail.

fs.write(fd, 'data to append', null, 'utf8', function(err, written, buffer) {});
Salin selepas log masuk
  1. Tutup fail:
fs.closeSync(fd);
Salin selepas log masuk

Kaedah ini jauh lebih pantas daripada membuka dan menutup pemegang fail berulang kali, terutamanya untuk fail besar atau lampiran yang kerap.

Atas ialah kandungan terperinci Bagaimana untuk Menambahkan Data dengan Cekap pada Fail 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