NodeJs學習(三) Fs模塊

Fs模塊

  1. fs.stat 檢測是文件仍是目錄
//目錄
fs.stat('html', function(err, stats) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('文件:' + stats.isFile());
    console.log('目錄:' + stats.isDirectory());
})
//文件
fs.stat('index.txt', function(err, stats) {
    if (err) {
        console.log(err);

        return false;
    }
    console.log('文件:' + stats.isFile());
    console.log('目錄:' + stats.isDirectory());
})

2.fs.mkdir 建立目錄css

//接收參數:
//path          將建立的目錄路徑
//mode          目錄權限(讀寫權限),默認0777
//callback      回調,傳遞異常參數err

fs.mkdir('css', function(err) {
    if (err) {
        console.log(err);

        return false;
    }
    console.log('建立目錄成功');
})

3.fs.writeFile 建立寫入文件html

//filename      (String)           文件名稱
//data          (String | Buffer)  將要寫入的內容,可使字符串 或 buffer數據。
//options       (Object)           option數組對象,包含:
//· encoding    (string)           可選值,默認 ‘utf8′,當data使buffer時,該值應該爲 ignored。
//· mode        (Number)           文件讀寫權限,默認值 438
//· flag        (String)           默認值 ‘w'
//callback {Function}              回調,傳遞一個異常參數err。

fs.writeFile('t.txt', '你好nodejs 覆蓋', 'utf8', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('寫入成功');
})

4.fs.appendFile 追加文件node

fs.appendFile('t1.txt', '這是寫入的內容', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('寫入成功');
})

5.fs.readFile 讀取文件數據庫

fs.readFile('t1.txt', function(err, data) {
    if (err) {
        console.log(err);
        return false;
    }
    //console.log(data);
    console.log(data.toString());
})

6.fs.readdir 讀取目錄數組

fs.readdir('html', function(err, data) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log(data);
})

7.fs.rename 重命名app

// 1. 更名 2. 剪切文件
fs.rename('html/index.html', 'html/news.html', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('修更名字成功');
})

8.fs.rmdir 刪除目錄學習

fs.rmdir('t', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('刪除目錄成功');
})

// ENOENT: no such file or directory, rmdir      rmdir 這個方法只能刪除目錄
fs.rmdir('index.txt', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('刪除目錄成功');
})

9.fs.unlink 刪除文件ui

fs.unlink('index.txt', function(err) {
    if (err) {
        console.log(err);
        return false;
    }
    console.log('刪除文件成功');
})

10.fs.createReadStream 從文件流中讀取數據code

const fs = require('fs')
    //流的方式讀取文件
let readStream = fs.createReadStream('input.txt');
let str = ''; /*保存數據*/
let count = 0; /*次數*/
readStream.on('data', function(chunk) {
        str += chunk;
        count++;
    })
    //讀取完成
readStream.on('end', function(chunk) {
        console.log(count);
        console.log(str);
    })
    //讀取失敗
readStream.on('error', function(err) {
    console.log(err);
})

11.fs.createWriteStream 寫入文件htm

let fs = require("fs");
let data = '我是從數據庫獲取的數據,我要保存起來11\n';
// 建立一個能夠寫入的流,寫入到文件 output.txt 中
let writerStream = fs.createWriteStream('output.txt');
for (let i = 0; i < 100; i++) {
    writerStream.write(data, 'utf8');
}
//標記寫入完成
writerStream.end();
writerStream.on('finish', function() {
        console.log('寫入完成');
    })
    //失敗
writerStream.on('error', function() {
    console.log('寫入失敗');
})

12.管道流

let fs = require("fs");
// 建立一個可讀流
let readerStream = fs.createReadStream('input.txt');
// 建立一個可寫流
let writerStream = fs.createWriteStream('output.txt');
// 管道讀寫操做
// 讀取 input.txt 文件內容,並將內容寫入到 output.txt 文件中
readerStream.pipe(writerStream);
console.log("程序執行完畢");

學習使我快樂 ~ 明天見,老是摸不懂這個寫的格式,好醜啊如今這樣。

相關文章
相關標籤/搜索