fs模块操作文件系统(文件/目录)在fs模块中,可以使用stat方法或lstat方法查看文件或目录信息。查看符号链接文件的信息时,必须使用lstat方法。一、异步方法1、语法fs.stat(path,callback);fs.lstat(路径,回调);2.参数(1)path:用于指定要查看的文件或目录的完整路径和文件名或目录名;(2)callback:用于指定查看文件或目录信息操作完成时执行的回调函数,方法如下:function(err,stats){...}。(2-1)参数:err:查看文件或目录信息操作失败时触发的错误对象;stats:一个fs.Stats对象。(2-2)该对象有以下方法:?isFile:用于判断正在查看的对象是否为文件,如果是,返回true,否则返回false;?isDirectory:用于判断正在查看的对象是否为文件Directory,如果是则返回true,否则返回false;?isBlockDevice:用于判断正在查看的文件是否为块设备文件,如果是则返回true,否则返回false(仅在Unix操作系统下有效);?isCharacterDevice:用于判断正在查看的文件是否为字符设备文件,如果是则返回true,否则返回false(仅在Unix操作系统下有效);?isSymbolicLink:用于判断正在查看的文件是否为符号链接文件,如果是则返回true,否则返回false。该方法只在lstat方法的回调函数中有效;?isFIFO:用于判断正在查看的文件是否为FIFO,如果是则返回true,否则返回false(仅在Unix操作系统下有效);?isSocket:用于判断正在查看的文件是否为socket文件,如果是则返回true,否则返回false(仅在Unix操作系统下有效);(2-3)该对象具有以下属性:?dev:属性值为文件或目录的设备ID,该属性值仅在Unix操作系统下有效;?ino:属性值为文件或目录的索引号,该属性值仅在Unix操作系统下有效;?mode:属性值是以数字形式表示的文件或目录的权限标志;?nlink:属性值为文件或目录的硬链接号;?uid:属性值是文件或目录所有者的用户ID。该值仅在Unix操作系统下有效;?gid:属性值是文件或目录所有者的组ID,属性值只在Unix操作系统下有效;?rdev:属性值是字符设备文件或块设备文件所在设备的ID。该属性值仅在Unix操作系统下有效;?size:属性值为文件大小(即文件的字节数);?atime:属性值为文件的访问时间;?mtime:属性值为文件的修改时间;?ctime:属性值为文件的创建时间;1234varfs=require('fs');fs.stat('./server.js',function(err,stats){console.log(stats);});运行结果:2.同步方式在同步方式下查看文件信息时,可以使用fs模块中的statSync方法或lstatSync方法。1.语法varmystat=fs.statSync(path);varmystat=fs.lstatSync(路径);2、参数path:用于指定要查看的文件或目录的完整路径和文件名或目录名。该方法返回存储文件信息的fs.Stats对象。3.fstat/fstatSync使用open或openSync方法打开文件并返回文件描述符后,可以使用fs模块中的fstat或fstatSync方法查询打开的文件信息。1.语法fs.fstat(fd,callback);varmystat=fs.fstatSync(fd);//该方法返回存储文件信息的fs.Stats对象2.参数fd:打开文件Filedescriptor时必须返回的参数值;callback:用于指定查看文件或目录信息操作完成时执行的回调函数。指定回调函数的方法与stat方法第二个参数值的回调函数完全相同;
