文件系统时nodejs中至关重要的一个模块,它使得JavaScript具备了操作文件的能力。对于所有文件或目录的操作fs都提供了同步和异步两种操作方式。另外nodejs也提供了文件流的处理。想要熟练掌握nodejs中文件的处理需要先了解以下几个概念:字符,字符集,字符编码,文件流,buffer。
- 字符:字符是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。* 字符集和字符编码:字符集就是各种字符的集合,而字符编码就是为字符集中每个字符规定个二进制数的一套规则,如我们常用的ASCALL,Unicode,UTF-8等。简单的来说字符集就是一套集合,字符编码就是一种集合对应的规则。* ASCALL编码:* Unicode:* UTF-8
- 文件流:从字面意思可以看出,文件流其实就是把文件当作水流一样进行处理。为何需要文件流呢,这个就要说到计算机等I/O处理了,大文件的打开和处理对于计算机I/O的消耗是很大的,随着互联网的发展几十几百G的文件很常见但是几百G的内存成本却很大,因此对文件的处理就需要流来进行,下载或上传时候把一个大文件分成若干份像水流一样进行传输。* Buffer:前端在刚接触buffer的时可能会把他当作字符串处理,这一点是不可取的,buffer和字符串有本质的区别,buffer是二进制数据流。文件
==
nodejs中提供文件服务的是fs模块,他能够实现文件、目录的增删改查,以及文件的信息获取。
- 文件目录的增删改查,fs对于目录的处理基本功能都有实现,新增(mkdir),删除(rmdir),查询(readdir)