Nodejs基础3之fs模块的文件重命名和移动、文件的删除、文件夹操作、查看资源状态、fs路径

发布时间:2024年01月15日

fs模块

文件重命名和移动

在 Node.js 中,我们可以使用 rename 或 renameSync 来移动或重命名 文件或文件夹
语法:

fs.rename(oldPath, newPath, callback)
fs.renameSync(oldPath, newPath)

参数说明:

  • oldPath 文件当前的路径
  • newPath 文件新的路径
  • callback 操作后的回调

文件的重命名

//1.导入fs模块
const fs=require('fs')

//2.调用rename方法
fs.rename('./座右铭.txt','./论语.txt',err=>{
    if(err){
        console.log("重命名失败!")
        return;
    }
    console.log("重命名成功!")
})

代码执行前:
在这里插入图片描述
代码执行后:
在这里插入图片描述

文件的移动

//文件的移动
const fs=require('fs')

fs.rename('./练习文档/清平调.txt','./资料/test/清平调.txt',err=>{
    if(err){
        console.log("移动错误")
        return;
    }
    console.log("移动成功")
})

移动前:
在这里插入图片描述

移动后:
在这里插入图片描述
在这里插入图片描述

同步重命名和移动

const fs=require('fs')
//同步重命名
fs.renameSync('./练习文档/数据.txt','./练习文档/data.txt')

//同步移动
fs.renameSync('./练习文档/数据.txt','./资料/test/数据.txt')

重命名前:
在这里插入图片描述
重命名后:
在这里插入图片描述
移动前:
在这里插入图片描述
移动后:
在这里插入图片描述

文件的删除

使用unlink进行删除

unlink异步删除
//1、引入fs模块
const fs=require('fs')

//2、使用unlink进行删除
fs.unlink('./hello.txt',err=>{
    if(err){
        console.log("删除失败")
        return
    }
    console.log("删除成功")
})

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述

在这里插入图片描述

unlinkSync同步删除
//1、引入fs模块
const fs=require('fs')
//使用unlinkSync同步删除
fs.unlinkSync('./test文稿.txt')

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述

使用rm进行删除

rm异步删除
//1、引入fs模块
const fs=require('fs')
//2、使用rm异步删除
fs.rm('./test文稿1.txt',err=>{
    if(err){
        console.log("删除失败")
        return
    }
    console.log("删除成功")
})

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述
在这里插入图片描述

rmSync同步删除
//1、引入fs模块
const fs=require('fs')
//2、使用rmSync同步删除
fs.rmSync('./test文稿2.txt')

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述

文件夹操作

创建文件夹

在 Node.js 中,我们可以使用 mkdirmkdirSync 来创建文件夹
语法:

fs.mkdir(path[, options], callback)
fs.mkdirSync(path[, options])

参数说明:

  • path 文件夹路径
  • options 选项配置( 可选
  • callback 操作后的回调
//1、引入fs模块
const fs=require('fs')
//2、使用mkdir创建文件夹 mk == make 制作 dir == directory
fs.mkdir('./html',err=>{
    if(err){
        console.log("创建失败")
        return
    }
    console.log("创建成功")
})

创建前:
在这里插入图片描述
创建后:

在这里插入图片描述

递归创建文件夹
//1、引入fs模块
const fs=require('fs')

//2、递归创建
fs.mkdir('./a/b/c',{recursive:true},err=>{
    if(err){
        console.log("创建失败!")
        return
    }
    console.log("创建成功!")
})

创建后:
在这里插入图片描述

读取文件夹

在 Node.js 中,我们可以使用 readdir 或 readdirSync 来读取文件夹
语法:

fs.readdir(path[, options], callback)
fs.readdirSync(path[, options])

参数说明:

  • path 文件夹路径
  • options 选项配置( 可选 )
  • callback 操作后的回调
//读取文件夹
//1、引入fs模块
const fs=require('fs')

//2、读取文件夹
fs.readdir('./练习文档',(err,data)=>{
    if(err){
        console.log("读取失败")
        return
    }
    console.log("data",data)
})

在这里插入图片描述
在这里插入图片描述

删除文件夹

在 Node.js 中,我们可以使用 rmdir 或 rmdirSync 来删除文件夹
语法:

fs.rmdir(path[, options], callback)
fs.rmdirSync(path[, options])

参数说明:

  • path 文件夹路径
  • options 选项配置( 可选 )
  • callback 操作后的回调
rmdir删除文件夹
//删除文件夹
const fs=require('fs')

fs.rmdir('./html',err=>{
    if(err){
        console.log("删除失败!")
        return
    }
    console.log("删除成功")
})

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述

删除递归文件夹
//删除递归
const fs=require('fs')

fs.rmdir('./a',{recursive:true},err=>{
    if(err){
        console.log("删除失败")
        return
    }
    console.log("删除成功")
})

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述
在这里插入图片描述

使用rm删除文件夹(建议使用)
//使用rm删除文件夹
const fs=require('fs')
fs.rm('./a',{recursive:true},err=>{
    if(err){
        console.log("删除失败")
        return
    }
    console.log("删除成功")
})

删除前:
在这里插入图片描述
删除后:
在这里插入图片描述

在这里插入图片描述

查看资源状态

在 Node.js 中,我们可以使用 stat 或 statSync 来查看资源的详细信息
语法:

fs.stat(path[, options], callback)
fs.statSync(path[, options])

参数说明:

  • path 文件夹路径
  • options 选项配置( 可选 )
  • callback 操作后的回调

结果值对象结构:

  • size 文件体积
  • birthtime 创建时间
  • mtime 最后修改时间
  • isFile 检测是否为文件
  • isDirectory 检测是否为文件夹
//1、导入fs模块
const fs=require('fs')

fs.stat('./资料/测试.mp4',(err,data)=>{
    if(err){
        console.log("操作失败")
        return
    }
    console.log(data)
    //判断是否是文件
    console.log(data.isFile())
    //判断是否是文件夹
    console.log(data.isDirectory())
})

在这里插入图片描述
在这里插入图片描述

fs路径

fs 模块对资源进行操作时,路径的写法有两种:

  • 相对路径
    • ./座右铭.txt 当前目录下的座右铭.txt
    • 座右铭.txt 等效于上面的写法
    • …/座右铭.txt 当前目录的上一级目录中的座右铭.txt
  • 绝对路径
    • D:/Program Files windows 系统下的绝对路径
    • /usr/bin Linux 系统下的绝对路径

相对路径

const fs=require('fs')

//相对路径
fs.writeFileSync('./练习文档/index.html','love')   //在当前目录下的练习文档中创建
fs.writeFileSync('index.html','love')   //在当前目录下创建
fs.writeFileSync('../index.html','love')  //在当前目录的上一级目录下创建

在这里插入图片描述
在这里插入图片描述

绝对路径

const fs=require('fs')

//绝对路径
fs.rmSync('F:/nodejs-learning/index.html')
fs.rmSync('F:/nodejs-learning/练习文档/index.html')

在这里插入图片描述

相对路径的一个小bug

const fs=require('fs')

//相对路径的参照物:命令行的工作目录
fs.writeFileSync('./index.html','love')

代码执行方式:
在这里插入图片描述
在这里插入图片描述

解决
const fs=require('fs')

//绝对路径'全局变量'保存的是:所在文件的所在目录的绝对路径
console.log("__dirname",__dirname)
fs.writeFileSync(__dirname+'/index.html','love')

在这里插入图片描述
在这里插入图片描述

文章来源:https://blog.csdn.net/qq_34306228/article/details/135379413
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。