node.js 中的 fs (文件)模塊


記錄 fs 模塊的方法及使用

1. fs.stat 獲取文件大小,創建時間等信息

// 引入 fs 模塊
const fs = require('fs');

fs.stat('01.fs.js', (err, stats) => {
    if (err) {
        console.log(err);
     return false; }
else { // 檢測類型,是文件還是目錄 console.log(`文件:${stats.isFile()}`); console.log(`目錄:${stats.isDirectory()}`); if (stats.isFile()) { // 文件大小 console.log(`size:${stats.size}`); // 創建時間 console.log(`birth time: ${stats.birthtime}`); // 最后一次修改時間 console.log(`modified time:${stats.mtime}`); } } })

結果如下:

文件:true
目錄:false
size:624
birth time: Wed Jul 25 2018 09:22:08 GMT+0800 (中國標准時間)
modified time:Wed Jul 25 2018 09:31:05 GMT+0800 (中國標准時間)

 

2. fs.mkdir 創建目錄

// 創建目錄
// path:將創建的目錄路徑
// mode:目錄權限(讀寫權限),默認0777
// callback:回調,傳遞異常參數err
fs.mkdir('css',(err)=>{
    if(err){
        console.log(err);
     return false; } console.log(
'創建目錄成功'); })

 

3. fs.writeFile 寫入文件

// 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','你好 node.js',(err)=>{
    if(err){
        console.log(err);
     return false;
   }
    console.log(
'寫入成功');
})

注意: 如果沒有 't.txt' 文件,會先創建文件,然后寫入內容,如果已經存在 't.txt' 文件,則會覆蓋原來的內容

 

4.fs.appendFile 追加文件

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

注意:如果要追加的文件不存在,則創建該文件,多次執行可以多次追加,而 writeFile 則是覆蓋掉原來的內容

 

5. fs.readFile 讀取文件

// 讀取文件內容
fs.readFile('index.txt', 'utf-8', (err, data) => {
    if (err) {
        console.log(err);
        return false;
    } else {
        console.log(data);
    }
})

 

6. fs.readdir 讀取目錄

比如,我想讀取這個目錄下的文件及文件夾

// 讀取目錄
fs.readdir('html',(err,data)=>{
    if(err){
        console.log(err);
    }else{
        console.log(data);
    }
})

結果如下:

[ 'css', 'index.html', 'js' ]

 

 7.1 fs.rename  重命名

// 重命名
fs.rename('html/index.html','html/news.html',(err)=>{
    if(err){
        console.log(err);
        return false;
    }else{
        console.log('修改名字成功');
    }
})

結果如下:

 

7.2 fs.rename 重定向

在 html 目錄下新建一個 index.css 文件,現在,想將這個文件放入到 css 文件夾下,代碼如下:

fs.rename('html/index.css','html/css/index.css',(err)=>{
    if(err){
        console.log(err);
        return false;
    }else{
        console.log('重定向成功');
    }
})

結果如下:

當然,也可以將重命名及重定向同步進行,代碼如下:

fs.rename('html/index.css','html/css/basic.css',(err)=>{
    if(err){
        console.log(err);
        return false;
    }else{
        console.log('重定向及重命名成功');
    }
})

結果如下:

 

8. fs.rmdir 刪除目錄

fs.rmdir('html/js',(err)=>{
    if(err){
        console.log(err);
        return false;
    }else{
        console.log('刪除js文件夾成功');
    }
})

 

9. fs.unlink 刪除文件

//  刪除文件
fs.unlink('1.txt',(err)=>{
    if(err){
        console.log(err);
        return false;
    }else{
        console.log('刪除文件成功');
    }
})

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM