文件讀取
- 導入文件模塊
// 導入文件模塊,node自帶的模塊 let fs=require('fs')
- 同步讀取
// Node默認是異步 // 同步讀取文件,會阻塞和等等 let content =fs.readFileSync('./fs/01.txt',{flag:'r',encoding:'utf-8'}) console.log(content) // 01txt中的內容是01txt
- 異步讀取
fs.readFile('./fs/01.txt',{flag:'r',encoding:'utf-8'},(err,data)=>{ if(err){ console.log(err) // 後打印 }else{ console.log(data) // 後打印 ‘01txt你好’ } }) console.log(123) // 先打印
// 封裝讀取文件的函數 function fsRead(path){ return new Promise(function(resolve,reject){ fs.readFile(path,{flag:'r',encoding:'utf-8'},(err,data)=>{ if(err){ reject(err) }else{ resolve(data) } }) }) } fsRead('./fs/01.txt').then(res=>{ console.log(res) // 後打印 ‘01txt你好’ }) console.log(123) // 先打印
文件寫入
-
異步寫入
// 將01.txt文件中的內容替換爲'世界美好',覆蓋原來的內容,如果文件路徑錯誤,會自動生成文件 fs.writeFile('./fs//01.txt','世界美好',{flag:'w',encoding:'utf-8'},function(err){ if(err){ console.log(err) }else{ console.log('寫入成功') } })
// 將01.txt文件中的內容追加'--世界美好' fs.writeFile('./fs//01.txt','--非常好',{flag:'a',encoding:'utf-8'},function(err){ if(err){ console.log(err) }else{ console.log('寫入成功') } })
function fsWrite(path, content) { return new Promise(function (resolve, reject) { fs.writeFile(path, content, { flag: 'a', encoding: 'utf-8' }, function (err) { if (err) { reject(err) } else { resolve(err) } }) }) } fsWrite("./fs/01.txt","-1") // 先追加 fsWrite("./fs/01.txt","-2") // 後追加
文件刪除
- 異步刪除文件
// 刪除fs文件下02.txt文件 fs.unlink('./fs/02.txt',function(err,data){ if(err){ console.log(err) }else{ console.log(data) } })