zoukankan      html  css  js  c++  java
  • node知识----文件I/O

    文件I/O

    文件操作

    1.fs模块的基本用法

    • 文件的I/O需求-----node.js中提供了一个名为fs的模块来支持I/O操作

    • fs模块的文件I/O是对标准POSIX函数的简单封装

    1.1 writeFile函数的基本用法

    文件I/O 写入

    writeFile函数 fs.writeFile(filename,data,callback)
    • fs模块提供writeFile函数,可以异步的将数据写入一个文件,如果文件存在则会被替换
    var fs= require("fs");
     
    fs.writeFile('test.txt', 'Hello Node', function (err) {
       if (err) throw err;
       console.log('Saved successfully'); //文件被保存
    });
    

    1.2 appendFile函数的基本用法

    appendFile函数 fs.appendFile(文件名,数据,编码,回调函数(err))
    • writeFile函数虽然可以写入文件,但是如果文件已经存在,我们只想添加一部分内容,他就不能满足了
    • appendFile函数可以将新的内容追加到已有的文件中
    • 如果文件不存在,则会创建一个新的文件
    • 编码格式默认为“utf8”
    var fs=require("fs");
    fs.appendFile("text.txt","data to append",function(err){
        if(err) throw err;
        
        console.log('The "data to append" was appended to file!')
    })
    

    1.3 exists函数的基本用法

    fs.exists(文件,回调函数(exists))
    • exists的回调函数只有一个参数,类型为布尔值
    • 通过它表示文件是否存在
    var fs= require("fs");
     
    fs.exists('/etc/passwd', function (exists) {
      console.log(exists ? "存在" : "不存在!");
    });
    

    1.4 rename函数的基本用法

    • 修改文件名称
    • rename函数提供修改名称服务
    var fs=require("fs");
    
    fs.rename(旧文件,新文件,回调函数(err){
    if (err) throw err;
    
    console.log("successful modeification")
    })
    
    • 移动文件
    • 通过rename函数来达到移动文件的目的
    var fs = require('fs');
     
    fs.rename(oldPath,newPath,function (err) {
       if (err) throw err;
       console.log('renamed complete');
    });
    

    1.5 readFile函数的基本用法

    fs.readFile(文件,编码,回调函数);
    var fs = require('fs');
     
    fs.readFile(文件名, function (err, data) {
      if (err) throw err;
      console.log(data);
    });
    

    回调函数里面的data就是读取的文件内容

    1.6 unlink函数的基本用法

    fs.unlink(文件,回调函数(err))
    • 删除想删除的文件

      var fs = require('fs');
       
      fs.unlink(文件, function(err) {
        if (err) throw err;
        console.log('successfully deleted');
      });
      

      目录的操作

      2.1 mkdir函数的基本用法

      fs.mkdir(路径,权限,回调函数(err))
    • 创建目录

    • 参数

      • 路径:新创建的目录。
      • 权限:可选参数,只在linux下有效,表示目录的权限,默认为0777,表示文件所有者、文件所有者所在的组的用户、所有用户,都有权限进行读、写、执行的操作。
      • 回调函数:当发生错误时,错误信息会传递给回调函数的err参数。

    2.2 rmdir函数的基本用法

    fs.rmdir(路径,回调函数(err))
    var fs = require('fs');
     
    fs.rmdir(path, function(err) {
      if (err) throw err;
      console.log('ok');
    });
    

    2.3 readdir函数的基本用法

    • 读取目录下所有文件
    • readdir函数可以读取到指定目录下所有的文件
    var fs = require('fs');
     
    fs.readdir(目录,回调函数(err,files));
    

    回调函数 (callback) 接受两个参数 (err, files) 其中 files 是一个存储目录中所包含的文件名称的数组,数组中不包括 '.' 和 '..'。

    总结

    fs模块不但提供异步的文件操作,还提供相应的同步操作方法,需要指出的是,nodejs采用异步I/O正是为了避免I/O时的等待时间,提高CPU的利用率,所以在选择使用异步或同步方法的时候需要权衡取舍。

  • 相关阅读:
    Java实现 LeetCode 715 Range 模块(选范围)
    HTML 图像
    HTML 样式- CSS
    HTML <head>
    HTML 链接
    HTML 文本格式化
    目标检测中的anchor-based 和anchor free
    目标检测coco数据集点滴介绍
    Camera HDR Algorithms
    噪声标签的负训练:ICCV2019论文解析
  • 原文地址:https://www.cnblogs.com/fuyanz/p/14346160.html
Copyright © 2011-2022 走看看