首页 > 编程语言 >项目中常用的node的文件操作

项目中常用的node的文件操作

时间:2023-03-03 15:33:44浏览次数:43  
标签:node 文件 常用 fs stats 返回 path true options

const fs = require('fs');

1、fs.createReadStream(path, [options])
返回一个readStream(文件读取流,输入流)对象。(可读流)
path:(string)想读取的文件路径
options:(object)数组对象包含以下属性

{
  flag: 'w', // 描述语
  encoding: null, // utf8、ascii、base64
  start: null, // 控制文件可读取字节数范围
  end: null,
  autoClose: true // 文件描述符是否会被关闭
}

2、fs.createWriteStream(path, [options])
返回一个writeStream(文件输入流)对象。(可写流)
path:(string)想写入的文件路径
options:(object)参数包含以下属性

{
  flag: 'w', // 默认值为W,如果你想修改一个文件,而不是取代它需要把flags改为R+
  encoding: null,// utf8、ascii、base64
  mode: 0666,
}

3、fs.stat(path, callback(err, stats)),fs.statSync(path)
获取文件信息状态
stat:是异步方法,path表示文件路径,callback指回调函数,有两个参数,stats是fs.stat的实例
statSync:同步方法,只接受一个path,返回的相当于stat的一个实例

3、1 fs.stat和fs.statSync实例的常用方法
1.stats.isFile(): 如果是文件则返回true,否则返回false;
2.stats.isDirectiory(): 如果是目录则返回true,否则返回false;
3.stats.isBlockDevice(): 如果是块设备则返回true,否则返回false;
4.stats.isCharacterDevice(): 如果是字符设备返回true,否则返回false;
5.stats.isSymbolicLink(): 如果是软链接返回true,否则返回false;
6.stats.isFIFO(): 如果是FIFO,则返回true,否则返回false.FIFO是UNIX中的一种特殊类型的命令管道;
7.stats.isSocket(): 如果是Socket则返回true,否则返回false;
8.stats.size(): 文件的大小(以字节为单位)。

4、fs.accessSync(path, mode)
用于同步测试给定文件或者目录的权限
path: (string)需要进行权限测试的文件或目录的路径
mode:是一个整数值,表示要测试的许可。可以具有的值,fs.constants.F_OK,fs.constants.R_OK,fs.constants.W_OK和fs.constants.X_OK。它是一个可选参数。默认值为fs.constants.F_OK。

5、fs.existsSync(path)
用于同步检查给定路径中是否已存在文件。返回一个布尔值,指示文件是否存在
path:(string)表示检查文件的路径

6、fs.mkdirSync(path,options)
用于同步创建目录
path:(string)创建目录的路径
options:(object)用于确定如何递归地创建目录等

7、fs.readdirSync(path, options)
用于同步读取给定目录的内容,返回一个数字,包含目录中的所有文件名或对象
path:(string)读取内容的目录路径
options:(object)用于指定将影响方法的可选参数

  {
    encoding: null, // utf8、ascii、base64
    withFileTypes: true, // 指定是否将文件作为fs.Dirent对象返回。默认false
  }

8、fs.rmdirSync(path, options)
用于同步删除给定路径下的目录
path:(string)删除目录的路径
options:(object)包含以下属性

{
  recursive: boolean, // 是否执行递归目录删除
  maxRetries: null, // 整数值,如果node因为任何错误而失败时,将尝试执行该操作的次数。在给定的重试延迟厚执行操作,如果递归选择未设置为true,则忽略该选项,默认0
  retryDelay:null,// 整数值,指定重试该操作之前要等到的时间
}

9、

标签:node,文件,常用,fs,stats,返回,path,true,options
From: https://www.cnblogs.com/taosifan/p/17127187.html

相关文章

  • Windows下使用FFmpeg,完成当前文件夹下多个MP4视频的拼接
    目的单纯进行视频时长拼接,不改变两段视频各自的分辨率、码率等一切信息。一、安装FFmpeg方法1:Windows打开powershell,使用winget命令安装FFmpegwingetinstallffmpeg......
  • 【Dockerfile】nvm-git-node-centos7镜像
    #依赖centos环境FROMcentos:7#安装vim、git和nvm环境RUNyuminstall-ywget\&&mv/etc/yum.repos.d/CentOS-Base.repo/etc/yum.repos.d/CentOS-Base.rep......
  • [VS工程技巧]远程调试工具及dump文件来检查程序崩溃及异常等问题
    做什么之前有一次梦中所得,既然可以让vs附加到进程去调试活动的dll,那要是可以让我本地的电脑去调试别人客户端或者测试环境的DLL就好了,这样就可以不通过dbgview去一个个输......
  • 预处理指令、typedef、条件编译、多文件代码
    预处理指令源代码中,以井号#开头的并不是C语言中的语句。它们属于预处理指令。在代码被编译前,预处理器会先处理预处理指令,并根据预处理指令的意义修改C语言源码。修改后的......
  • 7_Spring_使用外部属性配置文件
    ​ spring容器可以读取.properties属性配置文件,可以将文件中的信息注入给bean例如,引入Druid数据源,配置连接池信息1 导入Druid依赖和mysql-connector依赖<d......
  • 7_Spring_使用外部属性配置文件
    ​ spring容器可以读取.properties属性配置文件,可以将文件中的信息注入给bean例如,引入Druid数据源,配置连接池信息1 导入Druid依赖和mysql-connector依赖<d......
  • scrcpy安装与adb常用命令
    一、资源下载scrcpy安装包:https://download.csdn.net/download/qq_28807911/87527008github:https://github.com/Genymobile/scrcpy二、scrcpy安装1.右击此电脑-属性......
  • C:\Windows\System32\drivers\etc\hosts中的文件修改后无法保存
    这个文件定义了IP地址和主机名的映射关系。我们对其进行修改保存时显示没有权限无法保存,我们可以通过以下步骤解决。1、选中hosts文件,右键点击属性。2、在属性面板点击安......
  • powershell脚本将json文件至SQL Server
    一、问题引入之前写过一篇博客关于T-SQL脚本将json文件至SQLServer,但T-SQL脚本只能在SSMS软件下运行。现在迫切需要一种能在操作系统shell中运行的脚本,在StackOverflow......
  • Django+vue 上传execl文件并解析
    Django+vue上传execl文件并解析VUE<template><el-buttontype="primary"class="but_list_but1"><inputtype="file"name="avatar"id="avatar"style="display......