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~ 就先这些吧 ,不是特别详细,哈哈哈哈~

  • 相关阅读:
    一文让你明白Redis持久化
    spring-data-redis 2.0 的使用
    中间自适应布局的5种解法
    php实现只需要一个QQ号就可以获得用户信息
    基于LINUX下的进程管理问题
    【初码干货】记一次分布式B站爬虫任务系统的完整设计和实施
    初码-爬虫系列-文章目录
    初码-阿里云系列-文章目录
    初码-Azure系列-存储队列的使用与一个Azure小工具(蓝天助手)
    初码-Azure系列-记一次MySQL数据库向Azure的迁移
  • 原文地址:https://www.cnblogs.com/cassia/p/10167438.html
Copyright © 2011-2022 走看看