件系統操作相關的函數挺多的。首先可以分為兩大類。
一類是異步+回調的。 一類是同步的。
在這里只對異步的進行整理,同步的只需要在函數名稱后面加上Sync即可
1. 首先是一類最常規的讀寫函數,函數名稱和形式,應該是起源於C語言的。
fs.open(文件路徑,讀寫標識,[文件mode值,666],回調函數(err,文件句柄fd)); fs.read(文件句柄fd,被寫入的buffer,offset,length,position,回調函數(err, bytesRead, buffer)); fs.write(文件句柄fd,被讀取的buffer,offset,length,position,回調函數(err,bytesWritten,buffer)); fs.close(文件句柄,回調函數) fs.truncate(文件句柄,截斷長度,回調函數); fs.fsync(文件句柄,回調函數);
fs.readFile(文件名,編碼,回調函數(err,data)); fs.writeFile(文件名,數據,編碼,回調函數(err)); fs.appendFile(文件名,數據,編碼,回調函數(err));
3. 其它常用文件操作
判斷文件是否存在 fs.exists(文件路徑,callback(是否存在)); 重命名 fs.rename(舊文件名,新文件名,回調函數); 文件所有者變更 fs.chown(文件名,uid,gid,回調函數);/fs.fchown(文件句柄fd,uid,gid,回調函數);/fs.lchown(鏈接路徑,uid,gid,回調函數); 文件權限變更 fs.chmod(文件名,mode,回調函數);/fs.fchmod(文件句柄,mode,回調函數);/fs.lchmod(鏈接路徑,mode,回調函數); 文件信息 fs.stat(文件路徑,回調函數(err.fs.Stats對象));/fs.fstat(文件句柄fd,回調函數(err.fs.Stats對象));/fs.lstat(鏈接路徑,回調函數(err.fs.Stats對象)); 文件時間 fs.utimes(文件路徑,訪問時間,新建時間,回調函數);/fs.futimes(文件句柄,訪問時間,新建時間,回調函數); 監視文件 fs.watchFile(文件名,[options],listener_callback(當前文件的stats,改變前的stats)); fs.unwatchFile(文件名);
4. 目錄操作
fs.mkdir(路徑,權限mode/777,回調函數); fs.rmdir(路徑,回調函數); fs.readdir(路徑,回調函數(err,fileNameArray));
5. 鏈接文件操作
1 創建一個鏈接 2 fs.link(srcpath, dstpath, [callback]) 3 fs.symlink(destination, path, [type], [callback]) 4 讀取鏈接指向的路徑 5 fs.readlink(path, [callback(err,linkstr)]) 6 fs.unlink(path,[callback]);