在Nodejs中一个能完成特定功能的js文件都可以做为一个模块来使用,实际上一个js文件就是一个模块。
和html里面的script src功能相似,在nodejs中需要使用require()来引入一个模块。
用法:require('./fs.js');并且后缀可以省略。
fs文件模块:
var fs = require('fs') ;
fs.readFile(filepath','UTF-8',function (err,data){}):异步读文件操作。
filepath即可是绝对路径也可是相对路径;
‘UTF-8’是可选参数,如果不传递,读取的数据是Buffer类型;
function(err,data):是回调函数,err是读取时错误信息,如果正确为null,data就是读到的数据。
fs.reaeFileSync(fileName,'UTF-8'):同步读取文件
此方法为同步读取文件内容,返回值就为读取到的内容。
fs.writeFile(filename, data, [options], callback):异步写文件操作。
fs.appendFile(filename, data, [options], callback):异步给文件追加内容操作。
fs.exists(path, callback):异步判断给定文件是否存在。
同时还提供了好多文件操作方法,非常类似linux文件操作命令。
fs.rename(oldPath, newPath, callback):异步修改文件名称。
fs.renameSync(oldPath, newPath):同步修改文件名称。
fs.chown(path, uid, gid, callback):异步修改文件拥有者。
fs.chmod(path, mode, callback):异步修改文件权限。
fs.stat(path, callback):异步查看文件属性。
path模块:
var path = require('path') ;
path.sep:取得操作系统文件路径分割符(windows为\,而linux则为/)。
path.delimiter:额,和path.sep听像的不过返回的是windows为分号(;),linux为冒号(:)。
path.dirname(filename):和linux的dirname作用相同,给定文件的父绝对路径。
path.basename(filename):和linux的basename作用相同,给定文件的基名。
path.extname('fileName'):取得给定文件的后缀名,此文件不一定要存在。