fs 文件模块 (一) - nodejs

fs中文文档

打开文件:

fs.open( path , flag [,mode] , callback)         //    callback第一个为错误对象,第二个为fd

fs.openSync ( path , flag[ , mode] )

flag: 'r' - 以读取模式打开文件。如果文件不存在则发生异常。
'r+' - 以读写模式打开文件。如果文件不存在则发生异常。
'rs+' - 以同步读写模式打开文件。命令操作系统绕过本地文件系统缓存。这对 NFS 挂载模式下打开文件很有用,因为它可以让你跳过潜在的旧本地缓存。 它对 I/O 的性能有明显的影响,所以除非需要,否则不要使用此标志。注意,这不会使 fs.open() 进入同步阻塞调用。 如果那是你想要的,则应该使用 fs.openSync()。
'w' - 以写入模式打开文件。文件会被创建(如果文件不存在)或截断(如果文件存在)。
'wx' - 类似 'w',但如果 path 存在,则失败。
'w+' - 以读写模式打开文件。文件会被创建(如果文件不存在)或截断(如果文件存在)。
'wx+' - 类似 'w+',但如果 path 存在,则失败。
'a' - 以追加模式打开文件。如果文件不存在,则会被创建。
'ax' - 类似于 'a',但如果 path 存在,则失败。
'a+' - 以读取和追加模式打开文件。如果文件不存在,则会被创建。
'ax+' - 类似于 'a+',但如果 path 存在,则失败。

关闭文件

fs.close( fd , callback )

fs.closeSync( fd )

//fd 猜测为node为打开文件分配的一个id

删除文件:

fs.unlink( path , callback )                 //异步执行 , fs异步函数callback第一个参数均为error对象

fs.unlinkSync( path )                         //同步执行  , 报错会中断运行

文件重命名

fs.rename( oldpath, newpath, callback)

fs.renameSync(  oldpath, newpath )

读取文件

fs.readfile( path [,option] ,callback )      //callback第二个参数为内容data

fs.readfileSync ( path [,option] )

读取链接

fs.readlink( path [,option] ,callback )  

fs.readlinkSync ( path [,option] )

追加数据:

fs.appendFile( file, data [,option] ,callback )

fs.appendFileSync ( file, data [,option] )

截取文件

fs.turncate( path[, length] ,callback)

fs.turncateSync( path [, length])

拷贝文件: //v8.5新增

fs.copyFile( src, dest[, flags], callback )

fs.copyFileSync( src, dest [,flags] )

src:被拷贝的文件

dest:拷贝的目文件  //文件存在被覆盖

删除文件夹: // 要求被删除文件夹必须为空文件夹

fs.rmdir( path , callback )

fs.rmdirSync( path )

读取一个目录的内容:

fs.readdir( path , callback )     //callback第二个参数file是一个除. 和 ..  以外文件的数组

fs.readdirSync ( path ) 

创建文件夹:

fs.mkdir( path ,callback )

fs.mkdir( path )

检查文件存在?:// 不推荐使用,函数返回一个fs.stat对象(包含一些简单的文件数据)

fs.stat( path ,callback )

fs.statSync( path )

测试指定的文件或目录的用户权限:

fs.access( path [, mode ] , callback )

fs.accessSync( path [, mode ]  )

mode: fs.constants.F_OK 文件对调用进程可见。

fs.constants.R_OK 文件可被调用进程读取

fs.constants.W_OK 文件可被调用进程写入

fs.constants.X_OK 文件可被调用进程执行。 对 Windows 系统没作用(相当于 fs.constants.F_OK)。

改变文件或目录访问权限

fs.chmod( path ,mode ,callback)

fs.chmodSync ( path ,mode)

mode: //待添加

改变某个文件或目录的所有者和所属的组:

fs.chown( path ,uid ,gid ,callback )

fs.chownSync( path ,uid ,gid )

监测文件变化

fs.watch( path , output , callback ) // 输出为buffer,callback第一个参数为eventType fs文件变化类型,第二个是filename文件夹名。

fs.watch('./tmp', { encoding: 'buffer' }, (eventType, filename) => {
  if (filename) {
    console.log(filename);
    // 输出: <Buffer ...>
  }
});

停止监视文件

fs.unwatchFile(filename[, listener])



以上为初步的文件操作,不涉及buffer和流。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值