zoukankan      html  css  js  c++  java
  • 【File System】Node.js中文件操作模块File System

    File System的缩写是fs,管理文件及文件夹的模块,提供本地文件的读写能力。

    var fs = require("fs");

    建议大家是用异步方法,比起同步,异步方法性能更高,速度更快,而且没有阻塞。

    1.读文件

    //同步
    var res = fs.readFileSync("1.txt");
     console.log(res.toString());
    
    //异步
    fs.readFile("2.txt",(error,res)=>{
       if(error){
           console.log("有错误出现了",error);
       }
       console.log(res.toString());

    2.删除文件

    fs.unlinkSync("./1.txt"); //同步
    fs.unlink("./1.txt",(error)=>{//异步
       if(error){
           console.log("删除失败");
       }
       console.log("文件删除成功");
    })

    3.写文件覆盖

    fs.writeFileSync("./1.txt","红泥小火炉");
    fs.writeFileSync("./1.txt","晚来天欲雪");
    fs.writeFile("./1.txt","能饮一杯无",(error)=>{
       
    });

    4.写文件追加

    fs.appendFileSync("./1.txt","
    待到来年九月八"+new Date().getTime()+"
    ");
     
    5.exists()文件及文件夹是否存在
    var r = fs.existsSync("./1.txt");
    console.log(r);//true
     
    var r = fs.existsSync("./4.txt");
    console.log(r);//false

    6.rename()文件改名

    fs.renameSync("./1.txt", "./a.txt")
     
    //文件剪切 把a.txt 移动到a目录下 改名为b.txt
    fs.renameSync("./a.txt", "./a/b.txt")   
    7. readdir()读目录
    for( var i=5; i<10; i++ ){
       fs.writeFileSync("./a/"+i+".txt",  new Date().getTime())
    }
    var res = fs.readdirSync("./a/")
    console.log(res)
     
    //[ '5.txt', '6.txt', '7.txt', '8.txt', '9.txt' ]
    8.rmdir()删目录     只能删除空目录 所以要先删除目录下的文件再去删除目录
    var res = fs.readdirSync("./a/")
    // 先删掉里面的文件
    for( var i=0, len=res.length; i<len;  i++){
       fs.unlinkSync("./a/"+res[i])
    }
    // 再删掉目录
    fs.rmdirSync("./a/")

     

    9.stat()相关信息
    var stat = fs.statSync("./a/b.txt");
    console.log(stat);
     
    console.log(stat.size);
    //查看是不是文件
    console.log( stat.isFile() )
    //判断是不是文件夹 
    console.log( stat.isDirectory() )

     

    10.mkdir()创建目录
    fs.mkdirSync("./a")

    emmmmm~ 就先这些吧 ,不是特别详细,哈哈哈哈~

  • 相关阅读:
    测试clang-format的格式化效果
    debian设置limits.conf
    可读性公式的python包+MLTD讲解
    SQL-1
    首届中文NL2SQL挑战赛-step7记录
    首届中文NL2SQL挑战赛-step6
    torch学习中的难点
    yield and send的使用详细解释
    ELMO及前期工作 and Transformer及相关论文
    LSTM参数和结构的本质理解——num_units参数/batch_size/cell计算
  • 原文地址:https://www.cnblogs.com/cassia/p/10167438.html
Copyright © 2011-2022 走看看