Kaedah nodejs untuk mengubah suai kandungan fail: 1. Gunakan kaedah "fs.writeFile(path,data,callback:(err)=>void)" 2. Gunakan kaedah "fs.open(path,(err ) ,fd)=>{})" untuk membuka fail, dan kemudian tulis data melalui deskriptor fail fd.
Persekitaran pengendalian tutorial ini: sistem Windows 7, nodejs versi 14.15.4, komputer DELL G3.
Dalam nodejs, anda boleh menggunakan kaedah terbina dalam modul sistem fail (pendek kata fs) untuk mengubah suai kandungan fail.
Ubah suai kandungan fail
Tulis data pada fail tersebut boleh menjadi rentetan atau penimbal: fs.writeFile(path,data,callback:(err)=>void)
fs.writeFile('message.txt', data, (err) => { if (err) throw err; });
. Terdapat satu lagi Satu cara untuk menulis fail melalui deskriptor fail fd:
fs.open(path,(err,fd)=>{ //针对拿到的fd 进行操作:将buffer内容写如fd对应的文件里 //position为文件的起点 //length为待写的长度 //offset为缓存区起写的位置 fs.write(fd,buffer,offset,length,position,(err,bytesWrittenLen,buffer)=>{ }) //关闭文件 fs.close(fd, (err) => { if (err) throw err; }); })
Contoh: baca fail dan ubah suai kandungan fail
const fs = require('fs'); const path = require('path'); const newList = []; fs.readFile(path.join(__dirname, './json/hp_mph.json'), 'utf8', function (err, data) { if (err) throw err; let list = JSON.parse(data); // list.forEach((item,index)=>{ // let value = item.properties; // let result = {}; // result.ID = index + 1; // result.TYPE = value.FLAG_A; // result.X = value.X; // result.Y = value.Y; // newList.push(result); // }) for (let i = 0; i < list.length; i++) { let result = {}; let value = list[i].properties; result.ID = i + 1; result.TYPE = value.FLAG_A; result.X = value.X; result.Y = value.Y; newList.push(result); } let newContent = JSON.stringify(newList, null, 4); fs.writeFile('result.json', newContent, 'utf8', (err) => { if (err) throw err; console.log('success done'); }); });
[ Pembelajaran yang disyorkan: "tutorial nodejs"]
Atas ialah kandungan terperinci Bagaimana untuk mengubah suai kandungan fail dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!