美文网首页
Node.js_fs文件系统(三)

Node.js_fs文件系统(三)

作者: learninginto | 来源:发表于2020-02-25 23:29 被阅读0次

Node.js_fs文件系统(三)

  • fs.stat()

    判断文件类型

    isFile():判断是否是一个文件

    isDirectory:判断是否是一个文件夹

    const fs = require("fs");
    
    fs.stat("./index.js",(err,data) =>{
        console.log(data.isFile());
    })
    
  • fs.mkdir()

    创建目录(文件夹)

    fs.mkdir(path[, options], callback)(必须要写回调,即使回调是空的)

    const fs = require("fs");
    const path = require("path");
    
    fs.mkdir(path.resolve(__dirname,"./demo"),(err) => {});
    
  • fs.writeFile()

    创建并写入文件

    fs.writeFile(file, data[, options], callback)

    fs.writeFile(path.resolve(__dirname,"./demo/index.txt"),"abc",(err) => {});
    
  • fs.readFile()

    注意:直接读取信息的是buffer文件,需要将其转换为字符串

    fs.readFile(path.resolve(__dirname,"./demo/index.txt"),(err,data) => {
        //console.log(data);  //此时为buffer文件
        console.log(data + "");//或者data.toString()
    })
    
  • fs.rename()

    重命名文件或文件夹(oldpath , newpath)

    fs.rename(path.resolve(__dirname,"./demo/index.txt"),path.resolve(__dirname,"./demo/list.txt"),(err) => {})
    //index.txt文件被修改为list.txt
    
  • fs.readdir()

    查看demo1下的所有文件夹

    fs.readdir(path.resolve(__dirname,"../../demo1"),(err,list) => {
        console.log(list);
    })
    
  • fs.unlink()

    删除文件

    fs.unlink(path.resolve(__dirname,”./demo/list.txt),() =>{})
    //list.txt被删除
    
  • fs.rmdir()

    删除文件夹

    fs.rmdir(path.resovle(__dirname,"./demo"),(err) =>{})
    
  • 案例:深层遍历给定路径下的所有文件

    文件目录.png
    1. 先读取文件夹,获取文件的所有文件

    2. 对获取的文件进行遍历,用fs.stat 获得文件状态,

    3. 通过状态中的stat.isFile()或isisDirectory()判断是否是一个文件(夹),是文件直接输出文件名,不是文件就继续递归。

    let fs = require("fs");
    let path = require("path");
    let filePath = "E:/lxc/"
    function myReadfile(filePath) {
        //根据文件路径读取文件,返回文件列表
        fs.readdir(filePath, (err, files) => {
            if (err) {
                console.warn(err);
                return;
            }
            //遍历读取到的文件列表
            files.forEach(file => {
                //拼接获取绝对路径,fs.stat(绝对路径,回调函数)
                let fPath = path.join(filePath, file);
                fs.stat(fPath, (err, stat) => {
                    if (err) {
                        console.warn('获取文件stats失败');
                        return;
                    }
                    if (stat.isFile()) {
                        console.log(file);
                    }
                    else {
                        myReadfile(fPath);
                    }
                })
            })
        })
    }
    myReadfile(filePath);
    

    遍历结果:

    aa1.txt
    bb1.txt
    新建文本文档.txt

相关文章

  • Node.js_fs文件系统(三)

    Node.js_fs文件系统(三) fs.stat()判断文件类型isFile():判断是否是一个文件isDire...

  • ubuntu 常用指令笔记

    目录: 一.查看文件大小 二.查看当前文件系统各分区的大小 三.查看当前文件系统cpu,内存 四.查看当前文件系统...

  • Hadoop 之 HDFS

    文件系统 文件系统由三部分组成文件管理软件:Explorer , Total Commander被管理文件: /h...

  • HDFS

    定位 Hadoop 的分布式文件系统;对应Google的 大数据“三驾马车”的第一驾GFS(Google 文件系统...

  • FastDFS分布式文件系统(二)

    FastDFS 安装部署 分为三部分FastDFS分布式文件系统(一) 简介FastDFS分布式文件系统(二)...

  • FastDFS分布式文件系统(一)

    分为三部分FastDFS分布式文件系统(一) 简介FastDFS分布式文件系统(二) 安装部署FastDFS...

  • 第8章 管理文件系统(不是很懂的一章)

    8.1 探索Linux文件系统 8.1.1 基本的Linux文件系统 ext文件系统扩展文件系统(extended...

  • UWP 文件系统接口

    UWP 文件系统接口 本文章翻译自 MSDN UWP 文件系统的相关接口都放在下面三个名称空间中:Windows....

  • 存储引擎+InnoDB核心特性(ACID)-事务介绍

    1. 简介 类似于Linux的文件系统,比文件系统要高级 2. MySQL 存储引擎类型 第三方:TokuDB优势...

  • 文件系统

    第12章:文件系统 文件系统概念文件系统和文件文件描述符目录文件别名文件系统种类 虚拟文件系统 文件缓存和打开文件...

网友评论

      本文标题:Node.js_fs文件系统(三)

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