nodejs学习

 

Events模块

  1. Node.js 中所有能发出事件的对象都是events.EventEmitter的实例,对象发出事件后,需要有响应函数进行响应处理。
  2. EventEmitter类的对象具有一系列方法可以进行事件相关操作,他们是:
  • addListener(event,listener) / on(event,listener): 为对象的事件event添加监听器listener.
  • once(evnet,listener): 为对象的事件event添加只响应一次的监听器listener.
  • removeListener(event,listener): 移除一个监听器listener.
  • removeAllListeners([listeners]): 移除与一个对象绑定的所有listener.
  • setMaxListeners(n): 设置与一个对象绑定的监听器最多有n个。
  • emit(event, [arg1], [arg2], [...]): 触发事件event.
  • listenerCount(): 查看与对象绑定的监听器的个数。

fs模块

对系统文件及目录进行读写操作

readFile读取文件

使用fs.readFile(filename, [options], callback)方法读取文件。

readFile接收三个参数,filename是文件名;[options]是可选的参数,为一个对象,用于指定文件编码(encoding)及操作方式(flag);callback是回调函数。

 fs.readFileSync(filename, [options])是readFile的同步方法。

writeFile写入文件

使用fs.writeFile(filename, data, [options], callback)写入内容到文件。

writeFile接收四个参数,filename是文件名称;data是要写入文件的数据;[options]是一个对象为可选参数,包含编码格式(encoding),模式(mode)以及操作方式(flag);callback是回调函数。

使用fs.read和fs.write读写文件

使用fs.readfs.write读写文件需要使用fs.open打开文件和fs.close关闭文件。

先介绍fs.open(path, flags, [mode], callback)方法,此方法用于打开文件,以便fs.read()读取。path是文件路径,flags是打开文件的方式,[mode]是文件的权限(可选参数,默认值是0666),callback是回调函数。

fs.read()

先介绍fs.open(path, flags, [mode], callback)方法,此方法用于打开文件,以便fs.read()读取。path是文件路径,flags是打开文件的方式,[mode]是文件的权限(可选参数,默认值是0666),callback是回调函数。

flags的值:

  • r :读取文件,文件不存在时报错;
  • r+ :读取并写入文件,文件不存在时报错;
  • rs :以同步方式读取文件,文件不存在时报错;
  • rs+ :以同步方式读取并写入文件,文件不存在时报错;
  • w :写入文件,文件不存在则创建,存在则清空;
  • wx :和w一样,但是文件存在时会报错;
  • w+ :读取并写入文件,文件不存在则创建,存在则清空;
  • wx+ :和w+一样,但是文件存在时会报错;
  • a :以追加方式写入文件,文件不存在则创建;
  • ax :和a一样,但是文件存在时会报错;
  • a+ :读取并追加写入文件,文件不存在则创建;
  • ax+ :和a+一样,但是文件存在时会报错。

fs.close(fd, [callback])用于关闭文件,fd是所打开文件的文件描述符。

fs.read(fd, buffer, offset, length, position, callback)方法接收6个参数。

  • fd是文件描述符,必须接收fs.open()方法中的回调函数返回的第二个参数;
  • buffer是存放读取到的数据的Buffer对象;
  • offset指定向buffer中存放数据的起始位置;
  • length指定读取文件中数据的字节数;
  • position指定在文件中读取文件内容的起始位置;
  • callback是回调函数,回调函数的参数:
    • err用于抛出异常;
    • bytesRead是从文件中读取内容的实际字节数;
    • buffer是被读取的缓存区对象。

ps:参考自实验楼

posted @ 2017-07-31 11:06  fo0ol  阅读(125)  评论(0编辑  收藏  举报