美文网首页我爱编程
八:Node文件系统管理

八:Node文件系统管理

作者: 谢玉胜 | 来源:发表于2018-06-08 10:28 被阅读0次
    导入:var fs = require("fs")

    定义:Node.js 文件系统(fs 模块)模块中的方法均有异步和同步版本,例如读取文件内容的函数有异步的 fs.readFile() 和同步的 fs.readFileSync()。

    异步的方法函数最后一个参数为回调函数,回调函数的第一个参数包含了错误信息(error)。
    建议大家使用异步方法,比起同步,异步方法性能更高,速度更快,而且没有阻塞。

    1. 读取文件
    var fs = require("fs");
    
    // 异步读取
    fs.readFile('input.txt', function (err, data) {
       if (err) {
           return console.error(err);
       }
       console.log("异步读取: " + data.toString());
    });
    
    // 同步读取
    var data = fs.readFileSync('input.txt');
    console.log("同步读取: " + data.toString());
    
    console.log("程序执行完毕。");
    
    
    1. 打开文件:fs.open(path, flags[, mode], callback)
    
    var fs = require("fs");
    
    // 异步打开文件
    console.log("准备打开文件!");
    //r+以读写模式打开文件。如果文件不存在抛出异常。
    fs.open('input.txt', 'r+', function(err, fd) {
       if (err) {
           return console.error(err);
       }
      console.log("文件打开成功!");     
    });
    
    1. 获取文件信息
    var fs = require('fs');
    
    fs.stat('/Users/liuht/code/itbilu/demo/fs.js', function (err, stats) {
        console.log(stats.isFile());         //true
    })
    
    1. 文件信息的写入
    var fs = require("fs");
    
    console.log("准备写入文件");
    fs.writeFile('input.txt', '我是通 过fs.writeFile 写入文件的内容',  function(err) {
       if (err) {
           return console.error(err);
       }
       console.log("数据写入成功!");
       console.log("--------我是分割线-------------")
       console.log("读取写入的数据!");
       fs.readFile('input.txt', function (err, data) {
          if (err) {
             return console.error(err);
          }
          console.log("异步读取文件数据: " + data.toString());
       });
    });
    
    
    1. 删除fs.unlink(path, callback)
    2. 创建目录:fs.mkdir("/tmp/test/",function(err){}
      等等一系列方法

    相关文章

      网友评论

        本文标题:八:Node文件系统管理

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