nodejs 文件操作

定義文件系統(tǒng):

var fs = require('fs')

一、文件夾操作

  • 文件系統(tǒng):文件夾和文件操作
var fs = require('fs');
  • 文件夾操作
  • 創(chuàng)建文件夾
fs.mkdir(dirname,callback)
     path:
     callback:回調(diào)函數(shù) callback(err)
  • 讀取文件夾
fs.readdir(dirname,callback)
     path:文件路徑
     callback:回調(diào)函數(shù) callback(err,files) files:文件數(shù)組列表
  • 刪除空文件夾
fs.rmdir(dirname,callback)
     path:文件路徑
     callback:回調(diào)函數(shù)  callback(err)

二、文件操作

  • 普通文件操作
  • 讀取文件內(nèi)容
fs.readFile(filename,callback)
     filename:文件名
     callback(err,data)
  • 向文件中寫入內(nèi)容
fs.writeFile(filename,data,callback)
     filename:寫入文件名
     data:寫入文件的數(shù)據(jù)(String|Buffer)
     callback(err):錯誤信息參數(shù)
  • 向文件中追加內(nèi)容
fs.appendFile(filename,data,callback)
    callback(err)
  • 刪除文件
fs.unlink(path,callback)
    callback(err)
  • 文件字節(jié)操作(更靈活,也更復雜)
  • 打開文件
fs.open(filename, flags[,mode],callback)
     path:文件路徑
     flags:打開方式
          r(只讀) r+(讀寫) 文件不存在則拋出異常 
          w(只寫) w+(讀寫) 文件不存在則創(chuàng)建
          wx(只寫) wx+(讀寫) 文件存在,寫入失敗
          a(追加寫) a+(讀取追加) 文件不存在則創(chuàng)建
          ax(追加寫) ax+(讀取追加) 文件存在,追加失敗
     mode:設置文件權(quán)限,默認0666
     callback:callback(err,fd)
  • 讀取文件內(nèi)容
fs.read(fd,buffer,offset,length,position,callback)
     fd:文件描述符
     buffer:存放讀取文件內(nèi)容后的數(shù)據(jù)
     offset:寫入buffer的起始位置
     length:文件中讀取的字節(jié)數(shù)
     position:文件讀取的起始位置,如果position的值為null,則會從當前文件指針的位置讀取
     callback(err,bytesRead,buffer)
          err:錯誤信息
          bytesRead:讀取的字節(jié)數(shù)
          buffer:緩沖區(qū)對象
  • 寫入文件內(nèi)容 -buffer
fs.write(fd,buffer,offset,length[,position],callback)
        buffer:寫入文件的buffer數(shù)據(jù)(Buffer)
        offset:讀取buffer的起始位置
        length:寫入文件數(shù)據(jù)的長度
        position:寫入文件的起始位置
     callback(err,written,buffer)
          err
          written:實際寫入的字節(jié)數(shù)
          buffer:寫入的buffer對象
  • 寫入文件內(nèi)容 -data數(shù)據(jù)格式
fs.write(fd,data[,position,callback)
    fd:文件描述符
    data:寫入文件的數(shù)據(jù)(String)
    callback(err, written, buffer)
            err:
            written:實際寫入的字節(jié)數(shù)
            buffer:寫入的buffer對象
  • 截斷文件
fs.truncate(fd,len,callback)
     fd:文件描述符
     len:文件內(nèi)容截取長度
     callback(err)
  • 關(guān)閉文件內(nèi)容
fs.close(fd,callback)
  • 文件和文件夾共同操作
  • 查看文件和文件夾的狀態(tài)
fs.stat(path,callback)
     path:路徑|文件
     callback:callback(err,stats)
          stats:打印信息
          stats.isFile()
          stats.isDirectory()
  • 查看文件與目錄是否存在
fs.exists(path,callback)
    callback(bool):存在返回true,不存在返回false
已經(jīng)廢棄 建議采用fs.access(path, callback) 實現(xiàn)
  • 移動/重命名文件或目錄
fs.rename(oldPath, newPath, callback)
    callback(err)
  • 監(jiān)視文件
fs.watchFile(filename[,options],listener)
     filename:完整路徑及文件名
     options:persistent:true表示持續(xù)監(jiān)視,不退出程序(如果設置為false意義何在);interval單位毫秒,表示每隔多少毫秒監(jiān)視一次文件
     linstener:文件發(fā)生變化時回調(diào) callback(curr,prev)
          curr:fs.stat對象,被修改后文件
          prev:fs.stat對象,被修改前對象
  • 取消監(jiān)視文件
fs.unwatchFile(filename[,listener])
  • 監(jiān)視文件或目錄
  • filename 可以是一個文件或一個目錄
fs.watch(filename[,options][,listener])
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

  • 文件系統(tǒng)模塊是一個封裝了標準的 POSIX 文件 I/O 操作的集合。通過require('fs')使用這個模塊。...
    保川閱讀 925評論 0 0
  • 一、核心模塊和對象 核心模塊的意義 常用內(nèi)置模塊path:處理文件路徑fs:操作文件系統(tǒng)child_process...
    EndEvent閱讀 4,509評論 0 1
  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測試 ...
    KeKeMars閱讀 6,603評論 0 6
  • //公共引用 varfs =require('fs'), path =require('path'); 1、讀取文...
    才気莮孒閱讀 888評論 0 1
  • 這一年你十八歲 女孩子都喜歡活在18 你正是那個青春年華 也正是今年開始了 所謂的改變命運 班上的同學不再嘰嘰喳喳...
    萍萍_sunshine閱讀 332評論 0 0

友情鏈接更多精彩內(nèi)容