文件操作模塊(fs)

Node.js 文件系統封裝在 fs 模塊是中,它提供了文件的讀取、寫入、更名、刪除、遍歷目錄、鏈接等POSIX 文件系統操作。
與其他模塊不同的是,fs 模塊中所有的操作都提供了異步的和 同步的兩個版本,例如讀取文件內容的函數有異步的 fs.readFile() 和同步的 fs.readFileSync()。我們以幾個函數為代表,介紹 fs 常用的功能,并列出 fs 所有函數 的定義和功能。
fs.readFile語法(異步/非阻塞模式):
<pre>
fs.readFile(filename,[encoding],[callback(err,data)])
filename(必選),表示要讀取的文件名。
encoding(可選),表示文件的字符編碼。
callback 是回調函數,用于接收文件的內容。
如果不指 定 encoding,則 callback 就是第二個參數。回調函數提供兩個參數 err 和 data,err 表 示有沒有錯誤發生,data 是文件內容。如果指定了 encoding,data 是一個解析后的字符 串,否則 data 將會是以 Buffer 形式表示的二進制數據。
例如以下程序,我們從test.txt 中讀取數據,但不指定編碼:(text.txt下寫入hello world)
test.js下:
var fs = require('fs');
fs.readFile('test.txt', function(err, data) {
if(err) {
console.error(err);
} else{
console.log(data);//二進制
console.log(data.valueOf());//二進制
console.log(data.toString());//解析后的data
}
});
</pre>
在test.js下git bash :node test.js
<Buffer 68 65 6c 6c 6f 20 6e 6f 64 65 6a 73 21 21 21>
<Buffer 68 65 6c 6c 6f 20 6e 6f 64 65 6a 73 21 21 21>
hello nodejs!!!
fs.readFileSync同步(阻塞模式)語法:
fs.readFileSync(filename, [encoding])是 fs.readFile 同步的版本。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • topics: 1.The Node.js philosophy 2.The reactor pattern 3....
    宮若石閱讀 1,126評論 0 1
  • 文件系統模塊是一個封裝了標準的 POSIX 文件 I/O 操作的集合。通過require('fs')使用這個模塊。...
    保川閱讀 808評論 0 0
  • Node.js 常用工具 util 是一個Node.js 核心模塊,提供常用函數的集合,用于彌補核心JavaScr...
    FTOLsXD閱讀 545評論 0 2
  • Node.js是目前非常火熱的技術,但是它的誕生經歷卻很奇特。 眾所周知,在Netscape設計出JavaScri...
    w_zhuan閱讀 3,642評論 2 41
  • 一、核心模塊和對象 核心模塊的意義 常用內置模塊path:處理文件路徑fs:操作文件系統child_process...
    EndEvent閱讀 4,441評論 0 1