欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Node.js中文件操作模塊File System的詳細介紹

 更新時間:2017年01月05日 10:25:25   作者:Mervyn Zhang  
FileSystem模塊是類似UNIX(POSIX)標準的文件操作API,用于操作文件系統(tǒng)——讀寫目錄、讀寫文件——Node.js底層使用C程序來實現,這些功能是客戶端JS所不具備的。下面這篇文章就給大家詳細介紹了Node.js中的文件操作模塊File System,有需要的朋友們可以參考借鑒。

File System的縮寫是fs,該模塊提供本地文件的讀寫能力。

Nodejs導入文件系統(tǒng)模塊(fs)語法如下所示:

var fs = require("fs");

異步和同步

Node.js文件系統(tǒng)(fs模塊)模塊中的方法均有異步和同步版本,例如讀取文件內容的函數有異步的fs.readFile()和同步的fs.readFileSync() 。

異步的方法函數最后一個參數為回調函數,回調函數的第一個參數包含了錯誤信息(error)。同步則沒有回調函數。

建議大家是用異步方法,比起同步,異步方法性能更高,速度更快,而且沒有阻塞。

打開文件

語法如下:

fs.open(path,flags[,mode],[callback(err,data)]);//異步

     path - 文件的路徑。

     mode - 設置文件模式(權限),文件創(chuàng)建默認權限為0666(可讀,可寫)。

     callback - 回調函數,帶有兩個參數如:callback(err,fd)

     flags - 文件打開的行為。具體如下:

flag description
r 以讀取模式打開文件。如果文件不存在拋出異常。
r+ 以讀寫模式打開文件。如果文件不存在拋出異常。
rs 以同步的方式讀取文件。
rs+ 以同步的方式讀取和寫入文件。
w 以寫入模式打開文件,如果文件不存在則創(chuàng)建。
wx 類似 ‘w',但是如果文件路徑存在,則文件寫入失敗。
w+ 類似 ‘w+', 但是如果文件路徑存在,則文件讀寫失敗。
wx+ 類似 ‘w+', 但是如果文件路徑存在,則文件讀寫失敗。
以追加模式打開文件,如果文件不存在則創(chuàng)建。
ax 類似 ‘a', 但是如果文件路徑存在,則文件追加失敗。
a+ 以讀取追加模式打開文件,如果文件不存在則創(chuàng)建。
ax+ 類似 ‘a+', 但是如果文件路徑存在,則文件讀取追加失敗。

獲取文件信息

語法如下:

fs.stat(path,[callback(err,stats)]);//異步

fs.stat(path)執(zhí)行后,會將stats類的實例返回給其回調函數??梢酝ㄟ^stats類中的提供方法判斷文件的相關屬性。

stats類中的方法有:

方法 描述
stats.isFile() 如果是文件返回 true,否則返回 false。
stats.isDirectory() 如果是目錄返回 true,否則返回 false。
stats.isBlockDevice()  如果是塊設備返回 true,否則返回 false。
stats.isCharacterDevice() 如果是字符設備返回 true,否則返回 false。
stats.isSymbolicLink() 如果是軟鏈接返回 true,否則返回 false。
stats.isFIFO()  如果是FIFO,返回true,否則返回 false。FIFO是UNIX中的一種特殊類型的命令管道。
stats.isSocket()  如果是 Socket 返回 true,否則返回 false。

寫入文件

語法如下:

fs.writeFile(filename,data[,options],[callback]);//異步
fs.writeFileSync(filename,data); //同步

如果文件存在,該方法寫入的內容會覆蓋舊的文件內容。

     data -要寫入文件的數據,可以是String(字符串)或Buffer(流)對象。

     options - 該參數是一個對象,包含{encoding,mode,flag}。默認編碼為utf8,模式為0666,flag為'w';

追加內容

語法如下:

fs.appendFile(filename,data[,options],[callback]);//同步
fs.appendFileSync(filename,data[,options]); //同步

讀取文件

語法如下:

fs.read(fd,buffer,offset,length,position,[callback]);//異步
var buf = fs.readFile(filename,[encoding],[callback(err,data)]);//異步讀取
var buf = fs.readFileSync(filename,[encoding]);//同步讀取

     fd - 通過 fs.open() 方法返回的文件描述符。

     buffer - 數據寫入的緩沖區(qū)。

     offset - 緩沖區(qū)寫入的寫入偏移量。

     length - 要從文件中讀取的字節(jié)數。

     position - 文件讀取的起始位置,如果 position 的值為 null,則會從當前文件指針的位置讀取。

     encoding,編碼格式,該項是可選的。

關閉文件

語法如下:

fs.close(fd,callback);//異步

      fd - 通過 fs.open() 方法返回的文件描述符。

截取文件

語法如下:

fs.ftruncate(fd,len,callback);//異步

      fd - 通過 fs.open() 方法返回的文件描述符。

      len - 文件內容截取的長度。

刪除文件

語法如下:

fs.unlink(path,callback);

創(chuàng)建目錄

語法如下:

fs.mkdir(path[,mode],callback);

mode - 設置目錄權限,默認為 0777。

讀取目錄

語法如下:

fs.readdir(path,callback);

刪除目錄

語法如下:

fs.rmdir(path,callback);

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關文章

  • socket.io實現在線群聊功能

    socket.io實現在線群聊功能

    這篇文章主要為大家詳細介紹了socket.io實現在線群聊功能的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 修改npm全局安裝模式的路徑方法

    修改npm全局安裝模式的路徑方法

    今天小編就為大家分享一篇修改npm全局安裝模式的路徑方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 利用Chrome DevTools直接調試Node.js和JavaScript的方法詳解(并行)

    利用Chrome DevTools直接調試Node.js和JavaScript的方法詳解(并行)

    現在我們可以用瀏覽器調試node.js了!!!下面這篇文章主要介紹了利用Chrome DevTools直接調試Node.js和JavaScript的方法步驟,文中介紹的很詳細,需要的朋友可以參考學習,下面來一起看看吧。
    2017-02-02
  • NodeJS配置CORS實現過程詳解

    NodeJS配置CORS實現過程詳解

    這篇文章主要介紹了NodeJS配置CORS實現過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12
  • 如何使用nvm實現nodejs版本管理(版本刪除,版本切換及版本添加)

    如何使用nvm實現nodejs版本管理(版本刪除,版本切換及版本添加)

    這篇文章主要給大家介紹了關于如何使用nvm實現nodejs版本管理(版本刪除,版本切換及版本添加)的相關資料,nvm是一個node版本管理工具,通過它可以安裝多種node版本并且可以快速、簡單的切換node版本,需要的朋友可以參考下
    2023-10-10
  • Linux Centos7.2下安裝nodejs&npm配置全局路徑的教程

    Linux Centos7.2下安裝nodejs&npm配置全局路徑的教程

    今天小編就為大家分享一篇Linux Centos7.2下安裝nodejs&npm配置全局路徑的教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 詳解Wondows下Node.js使用MongoDB的環(huán)境配置

    詳解Wondows下Node.js使用MongoDB的環(huán)境配置

    這篇文章主要介紹了詳解Wondows下Node.js使用MongoDB的環(huán)境配置,這里使用到了Mongoose驅動來讓JavaScript操作MongoDB,需要的朋友可以參考下
    2016-03-03
  • Node.js中.pfx后綴文件的處理方法

    Node.js中.pfx后綴文件的處理方法

    這篇文章主要介紹了Node.js中.pfx后綴文件的處理方法,文中介紹的很詳細,對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • Node.js定時任務之node-schedule使用詳解

    Node.js定時任務之node-schedule使用詳解

    這篇文章主要介紹了Node.js定時任務之node-schedule使用詳解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • NodeJs超長字符串問題處理的詳細分析

    NodeJs超長字符串問題處理的詳細分析

    這篇文章主要給大家介紹了關于NodeJs超長字符串問題處理的詳細分析,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2023-02-02

最新評論