Node.js操作文件(fs)

nodejs文件操作(fs)

nodejs开发中,在操作文件时候,我们需要require(加载)File System包来获得文件操作功能。

var fs = require("fs");

而这个fs如何使用呢,这个时候我们就需要查询nodejs官方的API

http://nodejs.org/api/fs.html

基本文件操作包括:新建、重命名、删除等等,来看看几个例子

新建文件夹

// newfolder.js

// 加载文件系统模块
var fs = require("fs");

// 在C盘创建一个名为a的文件夹
fs.mkdir("c:a", function(err){
 if(!err){
    console.log("操作成功!");
 }else{
    console.log("操作失败!");
 }
});

[注意:如果文件夹存在err就会有错误信息。]

删除文件夹

// removefolder.js

var fs = require("fs");

// 删除C盘里的a文件夹
fs.rmdir("c:a", function(err){
 if(err){
    console.log("删除失败!");
 }else{
    console.log("删除成功!");
 }
});

[注意:如果删除文件夹不存在,那么err就会有错误信息。]

重命名文件夹

// rename.js

var fs = require("fs");

// 重命名a文件夹为b
fs.rename("c:a","C:b",function(err){
 if(err){
    console.log("重命名失败!");
 }else{
    console.log("重命名成功!");
 }
});

[注意:文件夹不存在,那么err就会有错误信息。]

判断文件/文件夹是否存在

// exsits.js

var fs = require("fs");

// 判断a文件夹是否存在
fs.exists("c:a", function(exists){
 if(exists){
    console.log("a文件夹存在");
 }else{
    console.log("a文件夹不存在")
 }
});

[注意:Then call the callback argument with either true or false
(这个回调函数参数值是true或者false)]

判断文件类型

  • fs.stat()
  • fs.lstat()
  • fs.fstat()

// stat.js

var fs = require("fs");


// 获取a文件夹的类型
fs.stat("C:a",function(err, stat){
 if(err){
    console.log("文件不存在!");
 }else{
    console.log("是否文件:"+stat.isFile());
    console.log("是否文件夹:"+stat.isDirectory());
 }
});

其它状态函数

stats.isFile()
stats.isDirectory()
stats.isBlockDevice()
stats.isCharacterDevice()
stats.isSymbolicLink() (只针对 fs.lstat() 有效)
stats.isFIFO()
stats.isSocket()

来源: 雨林博客(www.yl-blog.com)