美文网首页
Node fs模块常用方法

Node fs模块常用方法

作者: 弱冠而不立 | 来源:发表于2020-09-18 18:07 被阅读0次

    要使用此模块:

    const fs = require("fs")

    注:所有的文件系统操作都具有同步的、回调的、以及基于 promise 的形式。

    文件操作

    读取

    • fs.readFile(path,callback(err,data)) (异步读取)
    • fs.readFileSync(path) (同步读取)

    删除

    • fs.unlink(path,callback(err)) (异步删除)
    • fs.unlinkSync(path) (同步删除)

    写入

    写入时会先清空文件(如果文件不存在会先创建)
    fs.writeFile(path, data, callback(err))

    关于写入读取删除的一个样例:

    const fs = require("fs");
    let filePath = "fs-text.txt";
    //写入文件
    fs.writeFile(filePath, "fs test", function(err){
        if(err) {
            throw err;
        }
        console.log(`write success to ${filePath}`);
        //读取文件
        fs.readFile(filePath, "utf-8", (err,data)=>{
            if(err) {
                throw err;
            }
            console.log("file-data: ",data);
            //删除文件
            fs.unlink(filePath,(err)=>{
                if(err) {
                    throw err;
                }
                console.log(`delete success ${filePath}`);
            })
        })
    })
    

    目录操作

    创建目录

    fs.mkdir(path,callback(err))

    读取目录

    fs.readdir(path,callback(err))

    删除目录

    fs.rmdir(path,callback(err))

    注: 只能删除空文件目录,所以一般删除得先读取目录然后删除其中所有文件最后再删除文件目录。

    关于创建读取删除的一个简单样例

    let dirName = "dir-test"
    
    fs.mkdir(dirName, err=> {
        if(err) throw err;
        console.log(`make ${dirName} success`);
        fs.readdir(dirName, (err ,files)=>{
            if(err) {
                throw err;
            }
            console.log(`${dirName}'s files: `, files);
            fs.rmdir(dirName,err=>{
                console.log(`delete ${dirName} success`);
            })
        })
    })
    

    相关文章

      网友评论

          本文标题:Node fs模块常用方法

          本文链接:https://www.haomeiwen.com/subject/qedjyktx.html