精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

面試官:說說對 Node 中的 Fs 模塊的理解? 有哪些常用方法?

系統(tǒng)
操作系統(tǒng)會為每個打開的文件分配一個名為文件描述符的數(shù)值標(biāo)識,文件操作使用這些文件描述符來識別與追蹤每個特定的文件。

[[403607]]

本文轉(zhuǎn)載自微信公眾號「JS每日一題」,作者灰灰。轉(zhuǎn)載本文請聯(lián)系JS每日一題公眾號。

一、是什么

fs(file system),該模塊提供本地文件的讀寫能力,基本上是POSIX文件操作命令的簡單包裝

可以說,所有與文件的操作都是通過fs核心模塊實現(xiàn)

導(dǎo)入模塊如下:

  1. const fs = require('fs'); 

這個模塊對所有文件系統(tǒng)操作提供異步(不具有sync 后綴)和同步(具有 sync 后綴)兩種操作方式,而供開發(fā)者選擇

二、文件知識

在計算機(jī)中有關(guān)于文件的知識:

  • 權(quán)限位 mode
  • 標(biāo)識位 flag
  • 文件描述為 fd

權(quán)限位 mode

針對文件所有者、文件所屬組、其他用戶進(jìn)行權(quán)限分配,其中類型又分成讀、寫和執(zhí)行,具備權(quán)限位4、2、1,不具備權(quán)限為0

如在linux查看文件權(quán)限位:

  1. drwxr-xr-x 1 PandaShen 197121 0 Jun 28 14:41 core 
  2. -rw-r--r-- 1 PandaShen 197121 293 Jun 23 17:44 index.md 

在開頭前十位中,d為文件夾,-為文件,后九位就代表當(dāng)前用戶、用戶所屬組和其他用戶的權(quán)限位,按每三位劃分,分別代表讀(r)、寫(w)和執(zhí)行(x),- 代表沒有當(dāng)前位對應(yīng)的權(quán)限

標(biāo)識位

標(biāo)識位代表著對文件的操作方式,如可讀、可寫、即可讀又可寫等等,如下表所示:

符號 含義
r 讀取文件,如果文件不存在則拋出異常。
r+ 讀取并寫入文件,如果文件不存在則拋出異常。
rs 讀取并寫入文件,指示操作系統(tǒng)繞開本地文件系統(tǒng)緩存。
w 寫入文件,文件不存在會被創(chuàng)建,存在則清空后寫入。
wx 寫入文件,排它方式打開。
w+ 讀取并寫入文件,文件不存在則創(chuàng)建文件,存在則清空后寫入。
wx+ 和 w+ 類似,排他方式打開。
a 追加寫入,文件不存在則創(chuàng)建文件。
ax 與 a 類似,排他方式打開。
a+ 讀取并追加寫入,不存在則創(chuàng)建。
ax+ 與 a+ 類似,排他方式打開。

文件描述為 fd

操作系統(tǒng)會為每個打開的文件分配一個名為文件描述符的數(shù)值標(biāo)識,文件操作使用這些文件描述符來識別與追蹤每個特定的文件

Window系統(tǒng)使用了一個不同但概念類似的機(jī)制來追蹤資源,為方便用戶,NodeJS抽象了不同操作系統(tǒng)間的差異,為所有打開的文件分配了數(shù)值的文件描述符

在 NodeJS中,每操作一個文件,文件描述符是遞增的,文件描述符一般從 3 開始,因為前面有 0、1、2三個比較特殊的描述符,分別代表 process.stdin(標(biāo)準(zhǔn)輸入)、process.stdout(標(biāo)準(zhǔn)輸出)和 process.stderr(錯誤輸出)

三、方法

下面針對fs模塊常用的方法進(jìn)行展開:

  • 文件讀取
  • 文件寫入
  • 文件追加寫入
  • 文件拷貝
  • 創(chuàng)建目錄
  • 文件讀取

fs.readFileSync

同步讀取,參數(shù)如下:

  • 第一個參數(shù)為讀取文件的路徑或文件描述符
  • 第二個參數(shù)為 options,默認(rèn)值為 null,其中有 encoding(編碼,默認(rèn)為 null)和 flag(標(biāo)識位,默認(rèn)為 r),也可直接傳入 encoding

結(jié)果為返回文件的內(nèi)容

  1. const fs = require("fs"); 
  2.  
  3. let buf = fs.readFileSync("1.txt"); 
  4. let data = fs.readFileSync("1.txt""utf8"); 
  5.  
  6. console.log(buf); // <Buffer 48 65 6c 6c 6f> 
  7. console.log(data); // Hello 

fs.readFile

異步讀取方法 readFile 與 readFileSync 的前兩個參數(shù)相同,最后一個參數(shù)為回調(diào)函數(shù),函數(shù)內(nèi)有兩個參數(shù) err(錯誤)和 data(數(shù)據(jù)),該方法沒有返回值,回調(diào)函數(shù)在讀取文件成功后執(zhí)行

  1. const fs = require("fs"); 
  2.  
  3. fs.readFile("1.txt""utf8", (err, data) => { 
  4.    if(!err){ 
  5.        console.log(data); // Hello 
  6.    } 
  7. }); 

文件寫入

writeFileSync

同步寫入,有三個參數(shù):

  • 第一個參數(shù)為寫入文件的路徑或文件描述符
  • 第二個參數(shù)為寫入的數(shù)據(jù),類型為 String 或 Buffer
  • 第三個參數(shù)為 options,默認(rèn)值為 null,其中有 encoding(編碼,默認(rèn)為 utf8)、 flag(標(biāo)識位,默認(rèn)為 w)和 mode(權(quán)限位,默認(rèn)為 0o666),也可直接傳入 encoding
  1. const fs = require("fs"); 
  2.  
  3. fs.writeFileSync("2.txt""Hello world"); 
  4. let data = fs.readFileSync("2.txt""utf8"); 
  5.  
  6. console.log(data); // Hello world 

writeFile

異步寫入,writeFile 與 writeFileSync 的前三個參數(shù)相同,最后一個參數(shù)為回調(diào)函數(shù),函數(shù)內(nèi)有一個參數(shù) err(錯誤),回調(diào)函數(shù)在文件寫入數(shù)據(jù)成功后執(zhí)行

  1. const fs = require("fs"); 
  2.  
  3. fs.writeFile("2.txt""Hello world", err => { 
  4.     if (!err) { 
  5.         fs.readFile("2.txt""utf8", (err, data) => { 
  6.             console.log(data); // Hello world 
  7.         }); 
  8.     } 
  9. }); 

文件追加寫入

appendFileSync

參數(shù)如下:

  • 第一個參數(shù)為寫入文件的路徑或文件描述符
  • 第二個參數(shù)為寫入的數(shù)據(jù),類型為 String 或 Buffer
  • 第三個參數(shù)為 options,默認(rèn)值為 null,其中有 encoding(編碼,默認(rèn)為 utf8)、 flag(標(biāo)識位,默認(rèn)為 a)和 mode(權(quán)限位,默認(rèn)為 0o666),也可直接傳入 encoding
  1. const fs = require("fs"); 
  2.  
  3. fs.appendFileSync("3.txt"" world"); 
  4. let data = fs.readFileSync("3.txt""utf8"); 

appendFile

異步追加寫入方法 appendFile 與 appendFileSync 的前三個參數(shù)相同,最后一個參數(shù)為回調(diào)函數(shù),函數(shù)內(nèi)有一個參數(shù) err(錯誤),回調(diào)函數(shù)在文件追加寫入數(shù)據(jù)成功后執(zhí)行

  1. const fs = require("fs"); 
  2.  
  3. fs.appendFile("3.txt", " world", err => { 
  4.     if (!err) { 
  5.         fs.readFile("3.txt", "utf8", (err, data) => { 
  6.             console.log(data); // Hello world 
  7.         }); 
  8.     } 
  9. }); 

文件拷貝

copyFileSync

同步拷貝

  1. const fs = require("fs"); 
  2.  
  3. fs.copyFileSync("3.txt""4.txt"); 
  4. let data = fs.readFileSync("4.txt""utf8"); 
  5.  
  6. console.log(data); // Hello world 

copyFile

異步拷貝

  1. const fs = require("fs"); 
  2.  
  3. fs.copyFile("3.txt""4.txt", () => { 
  4.     fs.readFile("4.txt""utf8", (err, data) => { 
  5.         console.log(data); // Hello world 
  6.     }); 
  7. }); 

創(chuàng)建目錄

mkdirSync

同步創(chuàng)建,參數(shù)為一個目錄的路徑,沒有返回值,在創(chuàng)建目錄的過程中,必須保證傳入的路徑前面的文件目錄都存在,否則會拋出異常

  1. // 假設(shè)已經(jīng)有了 a 文件夾和 a 下的 b 文件夾 
  2. fs.mkdirSync("a/b/c"

mkdir

異步創(chuàng)建,第二個參數(shù)為回調(diào)函數(shù)

  1. fs.mkdir("a/b/c", err => { 
  2.     if (!err) console.log("創(chuàng)建成功"); 
  3. }); 

參考文獻(xiàn)

http://nodejs.cn/api/fs.html

 

https://segmentfault.com/a/1190000019913303

 

責(zé)任編輯:武曉燕 來源: JS每日一題
相關(guān)推薦

2021-06-03 08:14:01

NodeProcessJavaScript

2021-06-07 09:41:48

NodeBuffer 網(wǎng)絡(luò)協(xié)議

2021-06-08 08:33:23

NodeStream數(shù)據(jù)

2021-06-10 07:51:07

Node.js循環(huán)機(jī)制

2021-10-29 09:40:21

設(shè)計模式軟件

2021-09-13 09:23:52

TypeScript命名空間

2021-06-30 07:19:36

React事件機(jī)制

2021-07-19 07:55:24

Redux中間件原理

2021-05-31 10:35:34

TCPWebSocket協(xié)議

2021-08-11 08:53:23

Git命令面試

2021-07-12 08:35:24

組件應(yīng)用場景

2021-07-07 08:36:45

React應(yīng)用場景

2021-06-15 10:01:02

應(yīng)用系統(tǒng)軟件

2021-06-02 09:42:29

Node. js全局對象

2021-07-13 07:52:03

ReactHooks組件

2021-09-26 10:57:16

集合操作場景

2024-07-26 08:10:10

2021-09-27 06:50:04

非線性數(shù)據(jù)

2021-07-08 06:51:29

React函數(shù)組件

2021-07-29 07:55:20

React Fiber架構(gòu)引擎
點贊
收藏

51CTO技術(shù)棧公眾號

www在线观看播放免费视频日本| 欧美国产欧美亚洲国产日韩mv天天看完整| 九九热精品视频在线播放| 91免费黄视频| 久久精品日韩无码| 99久久精品免费看国产小宝寻花| 日本怡春院一区二区| 亚洲国产sm捆绑调教视频| 国产精品av网站| 国产日韩视频一区| 日本在线观看网站| 久久亚洲影院| 日韩激情在线视频| 黄色三级中文字幕| 国产精品久久婷婷| 欧美日韩国产高清电影| 精品久久久久久久久久久久| 波多野结衣精品久久| 女性裸体视频网站| 国偷自产av一区二区三区| 亚洲女与黑人做爰| 国产中文字幕91| 国产91丝袜美女在线播放| 中文av在线全新| 91一区二区在线| 欧美激情综合色综合啪啪五月| 香蕉视频999| 爱爱爱免费视频在线观看| 亚洲一区不卡| 精品香蕉在线观看视频一| av免费看网址| 国产剧情在线| 国产米奇在线777精品观看| 中文字幕一区电影| 国产视频一区二区三区在线播放| 手机在线不卡av| 一区二区三区四区五区精品视频| 亚洲国产天堂网精品网站| 丰满少妇大力进入| 色开心亚洲综合| 久久久国际精品| 国产精品久久久久91| 国产精品一区二区亚洲| 欧美女王vk| 欧美日韩一卡二卡三卡 | 超碰91人人草人人干| 亚洲国产日韩欧美在线观看| 91在线播放网站| 国产伦精品一区二区三区免费迷 | 日韩精品一级中文字幕精品视频免费观看 | 91亚洲国产高清| 91精品国产综合久久久久久久 | 一二三四区精品视频| 99久久伊人精品影院| 91福利在线观看视频| 欧美性久久久| 日韩精品视频在线| 麻豆精品国产传媒av| 欧美一级大片| 国产精品久久久久久亚洲毛片 | 久久国产天堂福利天堂| 手机免费看av片| 国产欧美三级电影| 亚洲成人久久一区| 亚洲一区在线不卡| 日本高清成人vr专区| 国产传媒日韩欧美成人| 欧美在线一区二区三区四| 成熟人妻av无码专区| 国内精品视频| 一片黄亚洲嫩模| 国产精品视频二| 国产羞羞视频在线播放| 中文字幕av一区二区三区高| 成人在线免费观看一区| 日本中文字幕在线观看视频| 欧美69wwwcom| 国产一区二区三区毛片| av在线免费观看不卡| 澳门成人av网| 艳妇臀荡乳欲伦亚洲一区| 激情六月天婷婷| 尤物网址在线观看| 亚洲色图19p| 欧美一区二区三区精美影视| 国产成人麻豆精品午夜在线 | 成人免费在线视频| 久久久久久九九| 国产三级按摩推拿按摩| 日韩精品每日更新| 成人免费直播live| 中文字幕第三页| 国产欧美高清| 国产精品网址在线| 欧美一级淫片免费视频黄| 午夜精品久久| 日韩av高清不卡| 国产精品美女久久久久av爽| 中文字幕av亚洲精品一部二部| 精品视频一区在线视频| 美国美女黄色片| 黄色成人av网站| 久久中文字幕国产| 国产无遮挡免费视频| 911精品美国片911久久久| 亚洲一级黄色片| av激情在线观看| 亚洲国产一成人久久精品| 久久免费国产视频| 久久免费精彩视频| 欧美视频日韩| 国产精品96久久久久久又黄又硬| 国产成人免费看一级大黄| 91美女片黄在线观看91美女| 国产美女在线精品免费观看| 99热精品在线播放| 久久久一区二区三区| 免费极品av一视觉盛宴| 99久久婷婷国产综合精品首页| 91黄色在线观看| 能在线观看的av| 在线毛片观看| 精品欧美一区二区三区精品久久| 亚洲女则毛耸耸bbw| 999久久精品| 亚洲第一男人av| 91n在线视频| 一个色综合网| 国产精品久久一区| 在线观看xxxx| 国产在线一区二区| 日本福利一区二区三区| а√在线天堂官网| 精品久久久久久久久久久| 黄色a级三级三级三级| 精品国产一区二区三区小蝌蚪| 91精品国产精品| 国产一级一级国产| 久色婷婷小香蕉久久| 成人欧美一区二区三区在线 | 久久精品国产99国产精品澳门 | 午夜视频在线免费看| 一区二区亚洲视频| 精品亚洲夜色av98在线观看| 久久人人爽人人爽人人| 国产精品99久久久久| 正义之心1992免费观看全集完整版| 久操免费在线| 欧美日韩在线播放三区| 久操视频在线观看免费| 天堂va蜜桃一区二区三区| 久久99精品久久久久子伦| 丁香花在线观看完整版电影| 精品日韩成人av| 久久精品久久国产| 成人午夜大片免费观看| 欧洲精品一区色| 日韩影片中文字幕| 国产一区二区三区视频| 国产成人自拍偷拍| 国产精品人妖ts系列视频| 邪恶网站在线观看| 欧美高清视频在线观看mv| 成人两性免费视频| 18videosex性欧美麻豆| 一本色道亚洲精品aⅴ| 91欧美一区二区三区| 日韩有码av| 久久国产精品久久精品| 亚洲精品福利网站| 国产精品三级在线观看| 伊人国产精品视频| 欧美日韩专区| 久久国产一区二区| aaaa欧美| 欧美黑人视频一区| 无码h黄肉3d动漫在线观看| 国产精品色哟哟网站| 成人性生交免费看| 你懂的视频一区二区| 国产精品免费观看高清| 日韩三级影院| 日韩免费高清av| 国产精品suv一区二区88| 国产在线不卡一卡二卡三卡四卡| 国产一区二区片| 久久91精品| 亚洲aⅴ日韩av电影在线观看| 国产精品一二三区视频| 亚洲成人1区2区| 免费看的黄色网| 国产福利精品一区| 国产一区二区视频免费在线观看| 成人在线视频你懂的| 欧美中文字幕第一页| 在线观看h片| 精品999在线播放| 久久久一二三区| 久久综合色婷婷| 成熟丰满熟妇高潮xxxxx视频| 亚洲国产中文在线| 国产97人人超碰caoprom| av网站网址在线观看| 亚洲精品中文字| 亚洲精品国产精品国| 欧美午夜精品一区| 日本人亚洲人jjzzjjz| 国产成人综合网站| 久久久国产欧美| 欧美精品乱码| 好吊妞www.84com只有这里才有精品| 新版中文在线官网| 国产亚洲a∨片在线观看| 精品人妻伦一二三区久久| 亚洲人被黑人高潮完整版| 黑人巨大精品欧美| 中文字幕亚洲综合久久五月天色无吗''| 国产综合色一区二区三区| 中文字幕成人| 欧美裸体男粗大视频在线观看| 全色精品综合影院| 日韩欧美亚洲范冰冰与中字| 法国伦理少妇愉情| 国产成人亚洲综合a∨猫咪| 少妇高潮一区二区三区99小说| 精品中文av资源站在线观看| 精品欧美国产一区二区三区不卡| 小说区图片区亚洲| 操日韩av在线电影| 成人精品福利| 亚洲精品永久免费精品| 欧美 日韩 国产 精品| 婷婷开心激情综合| 久久中文免费视频| 中文字幕中文字幕一区| 久久久久久国产精品日本| 美腿丝袜亚洲一区| av动漫在线播放| 天天射综合网视频| 99re在线视频上| 99精品视频在线免费播放 | 九九热这里有精品视频| 成人综合婷婷国产精品久久 | avtt久久| 成人在线中文字幕| 国产后进白嫩翘臀在线观看视频| 色妞一区二区三区| 丁香花免费高清完整在线播放| 欧美日韩一二三四五区| jizz中文字幕| 久久午夜电影网| a级大片在线观看| 国产亚洲综合在线| 超级砰砰砰97免费观看最新一期 | 国产区日韩欧美| 91精品尤物| 国产一区二区在线网站| 欧美大片网址| 国产中文字幕亚洲| 自拍偷拍亚洲图片| av成人在线电影| 精品国产导航| 成人免费视频在线观看超级碰| 亚洲视频资源| 97伦理在线四区| 成人在线免费av| 国产在线999| 精品午夜av| 国产精品一区二区三区观看| 色先锋久久影院av| 日本成人三级电影网站| 欧美电影一区| 国产91在线亚洲| 亚洲一区黄色| 中文字幕精品一区日韩| 小说区亚洲自拍另类图片专区 | 三级黄色录像视频| 一区二区三区在线观看网站| 性欧美精品中出| 福利91精品一区二区三区| 999精彩视频| 国产精品一区二区免费不卡 | 天天综合网久久| 国产suv精品一区二区6| 亚洲最大成人网站| 亚洲视频图片小说| 国产一区二区三区影院| 亚洲精品欧美综合四区| 久久久精品视频在线| 欧美午夜视频一区二区| 亚洲香蕉在线视频| 亚洲国产小视频在线观看| 成人p站proumb入口| 欧美丰满片xxx777| 国产精品亚洲一区二区三区在线观看| 97国产精品免费视频| 国产激情小视频在线| 69av视频在线播放| 成人日韩视频| 欧洲久久久久久| 影音先锋亚洲精品| 日本一区午夜艳熟免费| 午夜精品久久99蜜桃的功能介绍| 欧美亚洲一二三区| 国产精品资源在线| 欧美图片第一页| 亚洲福利视频一区| 国产又黄又猛又爽| 精品亚洲一区二区| 高h视频在线播放| 成人黄色免费片| 国产精品美女久久久久久不卡| 欧美不卡三区| 国产a久久精品一区二区三区| 超薄肉色丝袜足j调教99| 亚洲天堂一区二区三区四区| 日韩欧美精品在线观看视频| 久久久蜜桃一区二区人| 九九视频精品在线观看| www.亚洲色图| 一级黄色片大全| 亚洲一区二区三区视频在线播放| 久久香蕉精品视频| 欧美三级午夜理伦三级中视频| 亚洲 欧美 精品| 国内精品久久影院| 91大神精品| 轻点好疼好大好爽视频| 国产综合久久久久影院| 欧美人与禽zoz0善交| 一本色道久久综合狠狠躁的推荐| 亚洲精品国产一区二| 久久视频在线直播| 福利视频亚洲| 日韩精品电影网站| 亚洲91视频| 伊人影院综合在线| 欧美高清在线视频| 亚洲天堂视频在线播放| 91麻豆精品国产91久久久久| av在线三区| 国产精品一二三在线| 日韩伦理视频| 日本五级黄色片| 国产老妇另类xxxxx| 天天操天天操天天操天天操天天操| 欧美性欧美巨大黑白大战| 国产中文在线| 欧美另类xxx| 国内精品视频| av在线免费观看国产| 成人av高清在线| 色屁屁草草影院ccyy.com| 欧洲一区在线观看| 精品人妻无码一区二区三区蜜桃一| 久久精品免费电影| 免费精品一区| 日韩 欧美 视频| www国产成人| 欧美三级网站在线观看| 中文字幕亚洲情99在线| 不卡一区视频| 成人黄色大片网站| 91视频观看视频| 无码久久精品国产亚洲av影片| 色阁综合伊人av| www一区二区三区| 成年女人18级毛片毛片免费| 91香蕉视频污| 少妇无套内谢久久久久| 久久天天躁狠狠躁老女人| а√中文在线天堂精品| 亚洲中文字幕无码中文字| 国产精品视频免费看| 国产99对白在线播放| 91精品国产成人| 色无极亚洲影院| 久久性爱视频网站| 色天天综合色天天久久| 九七久久人人| 精品久久sese| 老司机精品视频在线| 久久免费黄色网址| 亚洲视频在线免费观看| 国产美女精品写真福利视频| 欧美精品亚洲精品| 国产日韩1区| 婷婷国产成人精品视频| 亚洲第一福利网| 91国内外精品自在线播放| 蜜桃视频一区二区在线观看| 久久综合精品国产一区二区三区| 在线免费观看高清视频| 久久久这里只有精品视频| 欧洲福利电影| 亚洲精品国产成人av在线| 欧美三级日韩在线| 波多野一区二区| 国产大尺度在线观看| 精品午夜一区二区三区在线观看|