在客户端javascript脚本代码中,对于二进制数据并没有提供一个很好的支持,但在处理TCP流或文件流时,必须要处理二进制数据。因此在Node.js中定义了一个Buffer类,该类用来创建一个专门存放二进制数据的缓存区。
- 使用Buffer类的各种构造函数来创建Buffer对象
- 计算字符串长度以及缓存区长度
- 实现Buffer对象与字符串之间的相互转换
- 实现Buffer对象与数值对象之间的相互转换
- 实现Buffer对象与JSON对象之间的相互转换
- 将一个Buffer对象中保存的二进制数据复制到另一个Buffer对象中
- Buffer类的所有类方法以及实现这些类方法
Buffer
Node.js中,Buffer类是一个可以在任何模块中被利用的全局类,不需要为了该类的使用而加载任何模块。
可以使用
new
关键字来创建该类的实例对象Buffer类拥有三种形式的构造函数
- 只需要将缓存区大小(以字节为单位)指定为构造函数的参数
BufferName = new Buffer(size);
node.js中提供了一个fs模块,以实现文件及目录的读写操作,相关模块path
操作文件
读写整个文件内容
读取文件中的部分内容
在文件中的指定位置处写入内容
创建和读取目录
查看与修改文件或目录
对文件执行其他各种类型的操作
流的基本概念
node.js中包括哪些用于读/写流数据的对象,这些对象各自有什么事件与方法
如何使用
ReadStream对象
与WriteStream对象
来快速读/写文章如何利用该模块中的各种方法来进行各种绝对路径、相对路径字符串之间的转换处理及其他各种可以对路径字符串进行的处理
读/写:
readFile
readFileSync [同步方法]
具体细节查看《Node.js权威指南》,P206
- 'r' : 读取文件,若文件不存在则抛出异常
- 'r+' : 读取并写入文件,若文件不存在则抛出异常
- 'rs' : 以同步方式读取文件并通知操作系统忽略本地系统缓存,若文件不存在则抛出异常
- 'w' : 写入文件,若文件不存在则创建文件,若文件已存在则清空文件内容
- 'wx' : 作用与'w'类似,但是以排他方式写入文件
- 'w+' : 读取并写入文件,若文件不存在则创建文件,若文件已存在则清空文件内容
- 'wx+' : 作用与'w+'类似,但是以排他方式写入文件
- 'a' : 追加写入文件,若文件不存在则创建文件
- 'ax' : 作用与'a'类似,但是以排他方式写入文件
- 'a+' : 读取并追加写入文件,若文件不存在则创建文件
- 'ax+' : 作用与'a+'类似,但是以排他方式写入文件
writeFile
writeFileSync
open
openSync
read
readSync
write
writeSync
close
mkdir
mkdirSync
readdir
readdirSync
stat
statSync
lstat
lstatSYnc
fstat
fstatSync
exists
existsSync
realpath
realpathSync
utimes
utimsSync
futimes
futimesSync
chmod
chomdSync
rename
renameSync
link
linkSync
unlink
unlinkSync
symlink
symlinkSync
readlink
readlinkSync
truncate
truncateSync
ftruncate
ftruncateSync
rmdir
rmdirSync
watchFile
unwatchFile
watch
createReadStream
writeStream