久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      分享一些Nodejs常用文件fs模塊API(總結(jié))

      本篇文章整理記錄了工作中常用的一些Nodejs文件fs模塊API,免的下次又忘了。

      分享一些Nodejs常用文件fs模塊API(總結(jié))

      作為一個web開發(fā)工程師,免不了跟Nodejs打交道,其中的fs模塊非常有用,可以執(zhí)行一些文件相關(guān)的操作,可總是記了忘、忘了記。今天打算再整理記錄一下,免的下次又忘了。

      同步與異步

      fs模塊的文件操作一般支持同步和異步兩種API,異步又包括了回調(diào)函數(shù)和promsie的形式。同步一般后面帶sync字樣?!就扑]學(xué)習(xí):《nodejs 教程》】

      打開、關(guān)閉文件

      fs.open(path:string,callback:(err,fd)=>void)用于打開文件,獲取文件描述符(file descriptor),基于拿到的文件描述符做文件操作。fs.close(fd:number,callback:(err)=>void)用于關(guān)閉文件

      //打開文件 fs.open(path,(err,fd)=>{     //針對拿到的fd 進行操作          //關(guān)閉文件     fs.close(fd, (err) => {         if (err) throw err;     }); })

      一般用于對文件做多種操作時使用。如果你僅僅想讀取文件的內(nèi)容建議用fs.readFile

      讀取文件(目錄)

      讀取文件:fs.readFile(path:string,callback:(err,data)=>void)

      fs.readFile(path,(err,data)=>{     //string或者buffer     console.log(data) })

      讀取目錄:fs.readdir(path:string,callback:(err,files:Array<string>)=>void)

      fs.readdir("./dir",(err,fileNames)=>{     console.log(fileNames) })

      還有一種方式通過文件描述符來讀?。?/p>

      fs.read(fd,buffer,offset,length,position,callback:(err,bytesLen,buffer)=>void)

      //分配一塊長度為10的緩存區(qū) const buffer = Buffer.alloc(10); //打開文件 fs.open(path,(err,fd)=>{     //針對拿到的fd 進行操作:將fd對應(yīng)的文件內(nèi)容讀取到buffer里     //position為文件的起點     //length為讀取的長度     //offset為緩存區(qū)起讀的位置     fs.read(fd,buffer,offset,length,position,(err,bytesLen,buffer)=>{         //buffer為包含讀到數(shù)據(jù)的原始buffer對象         //bytesLen === length;// true     })     //關(guān)閉文件     fs.close(fd, (err) => {         if (err) throw err;     }); })

      寫入文件

      將數(shù)據(jù)寫入文件,數(shù)據(jù)可以是字符串buffer:fs.writeFile(path,data,callback:(err)=>void)

      fs.writeFile('message.txt', data, (err) => {   if (err) throw err; });

      還有另一種方式,通過文件描述符fd來寫文件:

      fs.open(path,(err,fd)=>{     //針對拿到的fd 進行操作:將buffer內(nèi)容寫如fd對應(yīng)的文件里     //position為文件的起點     //length為待寫的長度     //offset為緩存區(qū)起寫的位置     fs.write(fd,buffer,offset,length,position,(err,bytesWrittenLen,buffer)=>{      })     //關(guān)閉文件     fs.close(fd, (err) => {         if (err) throw err;     }); })

      刪除文件(目錄)

      刪除文件:fs.unlink(path, callback:(err)=>void)

      刪除目錄:fs.rmdir(path,callback:(err)=>void)

      同時支持刪除目錄和文件:fs.rm(path,callback:(err)=>void)

      查看目錄(文件)的狀態(tài)信息

      fs.stat(path,(err,stat)=>{     //stat包含了該目錄或文件的大小、創(chuàng)建時間、更新時間,是目錄還是文件等     //stats.isDirectory()     //stats.isFile() })

      重命名

      重命名包括重命名文件和目錄

      //文件 fs.rename('oldFile.txt', 'newFile.txt', (err) => {   if (err) throw err;   console.log('Rename complete!'); }); //目錄 fs.rename('oldFileDir', 'newFileDir', (err) => {   if (err) throw err;   console.log('Rename complete!'); });

      最后

      感謝閱讀,如果有任何的問題歡迎留言討論,謝謝!

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號