91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js中的文件夾寫入怎么實現

發布時間:2020-12-08 09:46:52 來源:億速云 閱讀:212 作者:小新 欄目:web開發

這篇文章主要介紹了Node.js中的文件夾寫入怎么實現,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

fs.Dir & fs.Dirent

fs.Dir 是可迭代的目錄流的類,fs.Dirent 是遍歷 fs.Dir 獲得的目錄項,可以是文件或目錄中的子目錄

fs.Dir

  • dir.path:目錄的只讀路徑
  • dir.read():不傳入 callabck 函數則返回 Promise,讀取迭代器下一個目錄項,返回一個 Promise,resolve 后得到 fs.Dirent 或 null(如果沒有更多的目錄項要讀取)
  • dir.close():不傳入 callabck 函數則返回 Promise,關閉目錄的底層資源句柄

fs.Dirent

  • dirent.name
  • dirent.isDirectory()
  • dirent.isFile()
  • dirent.isSymbolicLink()

fs.opendir

fs.opendir(path[, options], callback) 打開一個目錄,返回 fs.Dir 對象

const fs = require('fs/promises');

async function print(path) {
  const dir = await fs.opendir(path);
  for await (const dirent of dir) {
    console.log(dirent.name);
  }
}
print('./').catch(console.error);

可以通過 dir.read() 迭代 dir

const fs = require('fs/promises');

async function print(path) {
  const dir = await fs.opendir(path);
  let dirent = await dir.read();
  while (dirent) {
    console.log(dirent.name);
    dirent = await dir.read();
  }

  dir.close();
}
print('./').catch(console.error);

fs.readdir

fs.readdir(path[, options], callback) 讀取目錄的內容,回調有兩個參數 (err, files),其中 files 是目錄中的文件名的數組(不包括 '.' 和 '..')
options

  • encoding:默認值 utf8,如果 encoding 設置為 'buffer',則返回的文件名是 Buffer 對象
  • withFileTypes:默認值 false,設置為 true 后回調函數 files 數組將包含 fs.Dirent 對象
const fs = require('fs/promises');

async function print(path) {
  const files = await fs.readdir(path);
  for (const file of files) {
    console.log(file);
  }
}
print('./').catch(console.error);

fs.mkdir

fs.mkdir(path[, options], callback) 創建目錄
options

  • recursive:默認值 false,設置為 true 時候相當命令 mkdir -p 會把不存在的目錄創建
  • mode:默認值 0o777,Windows 不支持
// 創建 /tmp/a/apple 目錄,無論是否存在 /tmp 和 /tmp/a 目錄。
fs.mkdir('/tmp/a/apple', { recursive: true }, err => {
  if (err) throw err;
});

fs.rmdir

fs.rmdir(path[, options], callback) fs.rmdir 用于刪除文件夾
options

  • recursive:默認值 false,如果為 true,則執行遞歸的目錄刪除。在遞歸模式中,如果 path 不存在則不報告錯誤,并且在失敗時重試操作
  • retryDelay:默認值 100,出現異常后重試之間等待毫秒數。如果 recursive 選項不為 true,則忽略此選項
  • maxRetries:默認值為 0,表示出現異常后重試的次數,如果遇到 EBUSY、 EMFILE、 ENFILE、 ENOTEMPTY 或 EPERM 錯誤,則 Node.js 將會在每次嘗試時以 retryDelay 毫秒的線性回退來重試該操作。 如果 recursive 為 false,則忽略此選項
const fs = require('fs');

fs.rmdir('./tmp', { recursive: true }, err => console.log);

之前 rmdir 只能刪除空的文件夾,現在可以連同文件一起刪除了

感謝你能夠認真閱讀完這篇文章,希望小編分享Node.js中的文件夾寫入怎么實現內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临漳县| 南岸区| 泗水县| 筠连县| 宝丰县| 遵化市| 凯里市| 偃师市| 抚远县| 清丰县| 茌平县| 江都市| 时尚| 阿坝县| 临海市| 斗六市| 南江县| 彰化市| 会昌县| 桓台县| 石渠县| 久治县| 广州市| 郯城县| 阜阳市| 南丹县| 城口县| 稻城县| 阿合奇县| 新闻| 噶尔县| 江门市| 怀仁县| 贡觉县| 霞浦县| 富锦市| 横山县| 龙江县| 榆林市| 镶黄旗| 临桂县|