首頁  >  文章  >  後端開發  >  node.js基於fs模組對系統檔案及目錄進行讀寫操作的方法詳解

node.js基於fs模組對系統檔案及目錄進行讀寫操作的方法詳解

小云云
小云云原創
2017-12-07 09:08:392020瀏覽

本文主要介紹了node.js基於fs模組對系統檔案及目錄進行讀寫操作的方法,結合實例形式分析了nodejs使用fs模組針對文件與目錄的讀寫、創建、刪除等相關操作技巧,需要的朋友可以參考下。

如果要用這個模組,首先需要引入,fs已經屬於node.js自帶的模組,所以直接引入即可


var fs = require('fs');


1.讀取檔案readFile方法使用

fs.readFile(filename,[option],callback) 方法讀取檔案。

參數說明:

filename String 檔名
option Object
  encoding String |null default=null
  flag String default='r'
callback Function


// 设置编码格式
fs.readFile('./test.txt', 'utf-8', function(err, data) {
  // 读取文件失败/错误
  if (err) {
    throw err;
  }
  // 读取文件成功
  console.log('utf-8: ', data.toString());
});


#2.寫入檔案writeFile方法使用

##使用fs.writeFile(filename,data,[options],callback)寫入內容到檔案。

參數說明:

filename String 檔名
data String|buffer
option Object
  encoding String |nulldefault='utf-8'
  mode Number default=438(aka 0666 in Octal)
  flag Stringdefault='w'
#callback Function


var fs = require('fs'); // 引入fs模块
// 写入文件内容(如果文件不存在会创建一个文件)
// 写入时会先清空文件
fs.writeFile('./test2.txt', 'test test', function(err) {
  if (err) {
    throw err;
  }
  console.log('Saved.');
  // 写入成功后读取测试
  fs.readFile('./test2.txt', 'utf-8', function(err, data) {
    if (err) {
      throw err;
    }
    console.log(data);
  });
});


因為預設flag='w'是寫,會清空文件,想要追加,可以傳遞一個flag參數,如下。

flag傳值,r代表讀取文件,w代表寫入文件,a代表追加。


var fs = require('fs'); // 引入fs模块
// 写入文件内容(如果文件不存在会创建一个文件)
// 传递了追加参数 { 'flag': 'a' }
fs.writeFile('./test2.txt', 'test test', { 'flag': 'a' }, function(err) {
  if (err) {
    throw err;
  }
  console.log('Saved.');
  // 写入成功后读取测试
  fs.readFile('./test2.txt', 'utf-8', function(err, data) {
    if (err) {
      throw err;
    }
    console.log(data);
  });
});


3.建立目錄mkdir使用

使用fs.mkdir (path,[mode],callback)建立目錄,path是需要建立的目錄,[mode]是目錄的權限(預設是0777),callback是回呼函數。


var fs = require('fs'); // 引入fs模块
// 创建 newdir 目录
fs.mkdir('./newdir', function(err) {
  if (err) {
    throw err;
  }
  console.log('make dir success.');
});


4.讀取目錄readdir


var fs = require('fs'); // 引入fs模块
fs.readdir('./newdir', function(err, files) {
  if (err) {
    throw err;
  }
  // files是一个数组
  // 每个元素是此目录下的文件或文件夹的名称
  console.log(files);
});


5.刪除檔案unlink


#
var fs = require('fs'); // 引入fs模块
fs.unlink('./newfile.txt', function(err) {
  if (err) {
    console.log(err);
    return false;
  }
  console.log("success");
});



6.刪除空資料夾rmdir

var fs = require('fs'); // 引入fs模块
fs.rmdir('./newdir', function(err) {
  if (err) {
    console.log(err);
    return false;
  }
  console.log("success");
});
以上內容就是node.js基於fs模組對系統檔案及目錄進行讀寫操作的方法詳解,希望能幫助大家。

###如何實作一個簡單的Node.js腳手架#############PHP與Node.js############node.js操作MongoDB的程式碼案例分享#######

以上是node.js基於fs模組對系統檔案及目錄進行讀寫操作的方法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn