node.js之基礎的文件操作

node.js之所以這麼火,其中最大的原因可能就是由於他的異步操作,處理高併發的效率高於其他。
所以也有很多網站,中間採用node.js進行渲染,能高效的處理大流量高併發的問題。
最近,公司的項目要用node.js進行書寫,可能有的童鞋納悶了,node不是服務器端的嗎,算是後端的東西了,但是公司並沒有把node作爲後端語言,而是作爲中間處理,通過模板引擎渲染頁面的,這可能纔是真正的node.js的用處吧,所以啊筆者又開始了 node.js的爬坑之路。
node虐我千百遍,我待node如初戀。
今天來說一下node.js的文件操作吧,畢竟這個東西也是基礎的,想要後端玩得好,文件操作這塊也得六。

// 下面的都是 異步書寫的, 其實工作中吧 用node很大部分原因就是因爲他的異步
當然你也可以同步
同步就是在異步的方法 後面加上 Async 例如 讀取文件:var data=fs.readFileAsync(’./hello.txt’);
裏面不用再加上 回調函數了。
這裏有個東西要記牢 異步 很大程度是依靠回調函數 但並不是回調函數就是異步。這個要記牢

const fs=require('fs');

// 1. fs.stat 檢查 是文件還是目錄

// fs.stat('./index.html',(err,data)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log(`是文件:${data.isFile()}`);
    console.log(`是目錄:${data.isDirectory()}`)

})

// 2.fs.mkdir() 創建目錄

fs.mkdir('./css',(err)=>{
    if(err){
        console.log(err);
        return;
    }

    console.log('創建成功!');
})

//  3. fs.writeFile  創建寫入文件 如果文件存在覆蓋裏面的內容  沒有就 重新創建
fs.writeFile('./hello.txt',"hello node.js",(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log("創建寫入成功!")
})

// 4. fs.appendFile 追加文件 內容
fs.appendFile('./hello.txt',"我要好好學習node.js",(err)=>{
    if(err){
        console.log(err);
        return;
    }

    console.log('success append!');
})

// 5.fs.readFile 讀取文件操作

fs.readFile('./hello.txt',(err,data)=>{
    if(err){
        console.log(err);
        return;
    }
    // 讀取的數據是 buffer 十六進制 要轉換成字符串
    console.log(data.toString());
})

// 6.fs.readdir 讀取目錄下的信息
fs.readdir('./',(err,data)=>{
    if(err){
        console.log(err);
    }
    console.log(data)
})

// 7.fs.rename 1.文件重命名 2.文件移動操作
fs.rename('./css/aaa.css','./css/index.css',(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('重命名成功//移動文件成功!');
})

// 8.fs.rmdir 刪除目錄  必須是空目錄纔可以刪除
fs.rmdir('./lib',(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('刪除目錄成功!');
})

// 9.fs.unlink() 刪除文件操作
fs.unlink("./app.txt",(err)=>{
    if(err){
        console.log(err);
        return;
    }
    console.log('刪除成功!');
})
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章