node之fs库,文件系统
2024-01-02 12:11:17
一、简介
Node.js 的 fs 模块是一个内置模块,用于与文件系统进行交互。它提供了一组功能丰富的方法,用于读取、写入、修改和删除文件和目录。
二、常用方法
- fs.open(path,flags,[mode],allback); 返回文件描述符,同步方法openSync,无回调
- path:文件路径 | |
- flags:以某种模式打开 |
- ‘r’ - 以读取模式打开文件。
- ‘r+’ - 以读写模式打开文件。文件不存在会发生异常
- ‘rs+’ - 以同步读写模式打开文件。绕过本地缓存
- ‘w’ - 以写入模式打开文件
- ‘wx’ - 类似’w’,但如果 path 存在,则失败。
- ‘w+’ - 以读写模式打开文件。文件会被创建(如果文件不存在)或截断(如果文件存在)。
- ‘wx+’ - 类似’w+',但如果 path 存在,则失败。
- ‘a’ - 以追加模式打开文件。如果文件不存在,则会被创建。
- ‘ax’ - 类似于’a’,但如果 path 存在,则失败。
- ‘ax+’ - 类似于’a+',但如果 path 存在,则失败。
- mode 可设置文件模式(权限和 sticky 位),但只有当文件被创建时才有效。默认为 0o666,可读写。
- callback 两个参数 (err, fd)。fd文件描述符
- fs.read(fd,buffer,offset,length,position,callback) 指定的文件中读取数据,同步方法readSync,无回调函数
- fd 文件描述符 (整数) buffer 是 |
- offset 是 buffer 中开始写入的偏移量
- length 是一个整数,指定要读取的字节数。
- position 指定从文件中开始读取的位置。
- callback 回调有三个参数 (err,bytesRead, buffer)。
- fs.readdir(path,[option],callback) 读取目录内容,同步方法readdirSync,无回调函数
- path 目录路径 | |
- options 可选的 options 参数用于传入回调的文件名,它可以是一个字符串并指定一个字符编码,或是一个对象且由一个encoding 属性指定使用的字符编码 |
- callback 两个参数(err, files)
- fs.readFile(path,[option],callback) 读取文件内容,同步方法readFileSync,无回调函数
- path 文件名或文件描述符 | | | 。
- option 如果为字符串则是编码,否则{“encoding”:“”,flag:“”} |
- callback 两个参数(err,data)
- fs.readlink(path,[option],callback) 还未知道用处
- fs.realpath(path,[option],callback) 返回绝对路径,同步realpathSync,无回调函数
- path 路径 | |
- options 如果是字符串则是编码,否则{“encoding”:“”} |
- callback 两个参数(err,resolvePath)
- fs.rename(oldPath,newPath,callback) 重命名 ,同步renameSync,无回调函数,返回undefined
- oldPath 旧路径 | |
- newPath 新路径 | |
- callback 一个参数(err)
- fs.stat(path,callback) 获取文件信息,同步statSync,无回调函数
- path 路径 | |
- callback 两个参数(err,stat)
- fs.rmdir(path,callback) 删除文件,window会报错,同步rmdirSync,无回调函数,返回undefined
- path 路径 | |
- callback 两个参数(err)
- fs.symlink(targetPath,path,[type],callback); 未知用处
- fs.truncate(path,[len],callback) 截断文件内容,同步方法truncateSync,无回调函数,返回undefined
- path 文件路径| len 截断长度,默认0
- callback 一个参数(err)
- fs.unlink(path,callback)删除文件,同步方法unlinkSync,无回调函数,返回undefined
- path 文件路径 |
- callback 一个参数(err)
- fs.unwatchFile(filename[listener]) 停止对文件的监控,无同步方法
- filename 文件名 |
- listener 监听器 | 如果是object {“eventType”:,“filename”: | }
- fs.utimes(path,atime,mtime,callback)修改文件时间戳,同步方法utimes,无回调函数,返回undefined
- path 文件路径 | |
- atime 修改时间 | |
- mtime 访问时间 | |
- callback 一个参数(err)
- fs.watch(filename[, options][, listener]) 监听文件
- filename 文件名 | |
- options 字符串时为编码格式,对象的时候{“persistent”:“”,“recursive”:“”,“encoding”:“”} |
- persistent 指明如果文件正在被监视,进程是否应该继续运行。默认 = true
- recursive 指明是否全部子目录应该被监视,或只是当前目录。适用于当一个目录被指定时,且只在支持的(详见 Caveats)。默认= false
- encoding 指定用于传给监听器的文件名的字符编码。默认 = ‘utf8’
- listener 两个参数(eventType, filename)
- fs.watchFile(filename[, options], listener) 监听文件,没有watch高效
- filename 文件名 | |
- options 字符串时为编码格式,对象的时候{“persistent”:“”,“interval”:“”} | persistent 指如果文件正在被监视,进程是否应该继续运行。默认 = true
- interval
- listener 两个参数(current,previous)
- fs.writeFile(file, data[, options], callback) 写入文件。同步方法writeFileSync,无回调函数,返回undefined
- file 文件名或文件描述符 | |
- data 写入文件的数据 | |
- options 字符串时是编码,对象是{“encoding”:“”,“mode”:“”,“flag”:“”}|
- callback 一个参数(err)
文章来源:https://blog.csdn.net/randy521520/article/details/134752753
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!