最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于node.js的fs核心模塊讀寫文件操作(實(shí)例講解)

 更新時(shí)間:2017年09月10日 08:12:28   作者:八bug哥哥  
下面小編就為大家?guī)硪黄趎ode.js的fs核心模塊讀寫文件操作(實(shí)例講解)。小編覺得挺不錯(cuò)的,現(xiàn)在就想給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

node.js 里fs模塊

常用的功能

實(shí)現(xiàn)文件的讀寫 目錄的操作

- 同步和異步共存 ,有異步不用同步

- fs.readFile 都不能讀取比運(yùn)行內(nèi)存大的文件,如果文件偏大也不會(huì)使用readFile方法

- 文件大分流讀取,stream

- 引入fs模塊

- let fs=require('fs')

同步讀取文件

-fs.readFileSync('路徑',utf8);

let result=fs.readFileSync('./1.txt','utf8');

異步讀取文件,用參數(shù)err捕獲錯(cuò)誤

- fs.readFile('路徑','utf8',function(){})

fs.readFile('./name.txt','utf8',function(err,data){
if(err){
console.log(err)
}else{
console.log(data)
}
})

同步寫入文件

- fs.writeFileSync("路徑",寫入的數(shù)據(jù))

fs.writeFileSync("./1.txt",JSON.stringify({name:1}))

異步寫入文件

- fs.writeFile('路徑',寫入的數(shù)據(jù),callback)

fs.writeFile('./1.txt','aaaaa',function (err) {
if(err){
console.log(err);
}
})

讀寫文件寫一個(gè)拷貝實(shí)例

let fs=require("fs");
//同步拷貝
function copySync(source,target){
//同步讀取
let result=fs.readFileSync(source,'utf8');
//同步寫入
fs.writeFileSync(target,result);
}
copySync("./age.txt",'./1.txt');

//異步拷貝

function copy(sourse,target,callback){
//異步讀取
fs.readFile(sourse,'utf8',function(err,data){
if(err){
return callback(err)
}else{
//異步寫入
fs.writeFile(target,data,callback)
}
});
};
copy('./name.txt','./ss.txt',function(err){
if(err) return console.log(err);
console.log('拷貝成功')
})

判斷文件存不存在

- fs.existsSync('文件的路徑')

stat方法

fs.stat('文件路徑',function (err,stat) {

stat.isDirectory 看是不是文件夾
stat.isFile 看是不是文件

})

刪除文件夾

- fs.rmdir('文件夾路徑',function(){})

刪除文件

- fs.unlink('文件路徑',function(){})

//判斷文件存不存在

if(fs.existsSync('./b')){
fs.stat('./b',function (err,stat) {
//stat中的time是用來做服務(wù)器緩存
//stat.isDirectory看是不是文件夾 stat.isFile看是不是文件
if(stat.isDirectory()){
//刪除文件夾
fs.rmdir('./b',function(){})
}else{
//刪除文件
fs.unlink('./b',function(){});
}
})
}

利用遞歸寫一個(gè)文件夾依次創(chuàng)建

function md(url) {
  let paths=url.split('/'); //將a/b/c拆分成數(shù)組['a','b','c']
  let index=0;
  function make(path){
    if(index===paths.length+1){ // 如果到終點(diǎn),停止遞歸
      return false;
    }
    if(!fs.existsSync(path)){ //不存在
      //創(chuàng)建文件夾
      fs.mkdir(path,function () {
        make(paths.slice(0,++index).join('/'))
      })
    }else{ //存在
      make(paths.slice(0,++index).join('/'))
    }
  }
  make(paths[index++]) //先取出第一個(gè)
}
md('a/b/c/d');

以上這篇基于node.js的fs核心模塊讀寫文件操作(實(shí)例講解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • VSCode使用npm的詳細(xì)步驟

    VSCode使用npm的詳細(xì)步驟

    為了避免造輪子,我們有時(shí)候會(huì)用到其他人的勞動(dòng)成果,比如一些優(yōu)秀的框架,比如Express,我們直接使用NPM下載下來就可以用了,降低開發(fā)成本和時(shí)間,這篇文章主要給大家介紹了關(guān)于VSCode使用npm的詳細(xì)步驟,需要的朋友可以參考下
    2022-09-09
  • nodejs使用redis作為緩存介質(zhì)實(shí)現(xiàn)的封裝緩存類示例

    nodejs使用redis作為緩存介質(zhì)實(shí)現(xiàn)的封裝緩存類示例

    這篇文章主要介紹了nodejs使用redis作為緩存介質(zhì)實(shí)現(xiàn)的封裝緩存類,涉及nodejs操作redis進(jìn)行緩存設(shè)置相關(guān)操作技巧,需要的朋友可以參考下
    2018-02-02
  • 前端Electron新手入門教程詳解

    前端Electron新手入門教程詳解

    這篇文章主要介紹了Electron新手入門教程詳解,首先圍繞Electron框架的關(guān)鍵知識(shí)點(diǎn)進(jìn)行詳細(xì)講解,然后對(duì)DEMO程序進(jìn)行分析,讓前端開發(fā)人員對(duì)使用Electron開發(fā)桌面應(yīng)用程序有一個(gè)初步的了解。,需要的朋友可以參考下
    2019-06-06
  • NodeJS連接MongoDB數(shù)據(jù)庫時(shí)報(bào)錯(cuò)的快速解決方法

    NodeJS連接MongoDB數(shù)據(jù)庫時(shí)報(bào)錯(cuò)的快速解決方法

    下面小編就為大家?guī)硪黄狽odeJS連接MongoDB數(shù)據(jù)庫時(shí)報(bào)錯(cuò)的快速解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考
    2016-05-05
  • 使用NodeJs 開發(fā)微信公眾號(hào)(三)微信事件交互實(shí)例

    使用NodeJs 開發(fā)微信公眾號(hào)(三)微信事件交互實(shí)例

    這篇文章主要介紹了使用NodeJs 開發(fā)微信公眾號(hào)(三)微信事件交互實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • node.js cookie-parser之parser.js

    node.js cookie-parser之parser.js

    這篇文章主要介紹node.js cookie-parser之parser.js,講解的比較詳細(xì),需要的朋友可以參考下。
    2016-06-06
  • 如何使node也支持從url加載一個(gè)module詳解

    如何使node也支持從url加載一個(gè)module詳解

    這篇文章主要給大家介紹了關(guān)于如何使node也支持從url加載一個(gè)module的相關(guān)資料,文中通過示例代碼將實(shí)現(xiàn)的方法介紹非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧
    2018-06-06
  • 利用Node.js對(duì)文件進(jìn)行重命名

    利用Node.js對(duì)文件進(jìn)行重命名

    最近工作中遇到了對(duì)文件進(jìn)行重命名的需求,后通過node.js實(shí)現(xiàn)了,所以下面這篇文章主要給大家介紹了利用Node.js對(duì)文件進(jìn)行重命名的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。
    2017-03-03
  • 深入了解Node.js中的一些特性

    深入了解Node.js中的一些特性

    這篇文章主要介紹了深入了解Node.js中的一些特性,本文對(duì)EventEmitter、Streams、Coding Style、Linting、Coding Style等特性進(jìn)行分析探討,需要的朋友可以參考下
    2014-09-09
  • 深入理解 Koa 框架中間件原理

    深入理解 Koa 框架中間件原理

    koa是目前node里最流行的web框架。這篇文章主要介紹了理解 Koa 框架中間件原理,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-10-10

最新評(píng)論

岢岚县| 临安市| 阳山县| 明溪县| 延庆县| 荣昌县| 昌平区| 大安市| 江西省| 洛隆县| 永福县| 康平县| 宣化县| 绥滨县| 呼和浩特市| 吴旗县| 彰化县| 宜春市| 正宁县| 陕西省| 临桂县| 永年县| 台北县| 六安市| 新乐市| 余姚市| 荣昌县| 阳信县| 双桥区| 台北县| 怀宁县| 黎川县| 宝丰县| 略阳县| 新营市| 县级市| 双江| 肇州县| 乾安县| 自治县| 康保县|