var fs = require('fs');
fs.rmdir('./1',function(err){
console.log(err);//null
})
fs.rmdirSync(path, callback)
fs.rmdir(path, callback)的同步版本,返回undefined
var fs = require('fs');
fs.rmdirSync('./2');3、读取
fs.readdir(path[, options], callback)
参数如下:
path <String> | <Buffer>
options <String> | <Object> 可选的 options 参数用于传入回调的文件名,它可以是一个字符串并指定一个字符编码,或是一个对象且由一个 encoding 属性指定使用的字符编码。 如果 encoding 设为 ‘buffer’,则返回的文件名会被作为 Buffer 对象传入
encoding <String> 默认 = ‘utf8’
callback <Function> 回调有两个参数 (err, files),其中 files 是目录中不包括 ‘.’ 和 ‘..’ 的文件名的数组
var fs = require('fs');
fs.readdir('./',function(err,data){
console.log(err);//null
/*
[ '.csslintrc',
'.jshintrc',
'a.txt',
'dist',
'Gruntfile.js',
'Gruntfile1.js',
'index.html',
'main.js',
'node_modules',
'package.json',
'src' ] */
console.log(data);
})
var fs = require('fs');
fs.readdir('./',function(err,data){
data.forEach(function(item,index,arr){
fs.stat(item,function(err,stats){
if(stats.isFile()){
console.log('文件:' + item);
}
if(stats.isDirectory()){
console.log('目录:' + item);
}
});
})
})
/*
文件:.jshintrc
文件:.csslintrc
目录:dist
文件:Gruntfile.js
文件:index.html
文件:Gruntfile1.js
文件:main.js
目录:node_modules
文件:package.json
文件:a.txt
目录:src
*/
fs.readdirSync(path[, options], callback)
fs.readdir(path[, options], callback)的同步版本,返回一个不包括 ‘.’ 和 ‘..’ 的文件名的数组
var fs = require('fs');
var result = fs.readdirSync('./');
/*
[ '.csslintrc',
'.jshintrc',
'a.txt',
'dist',
'Gruntfile.js',
'Gruntfile1.js',
'index.html',
'main.js',
'node_modules',
'package.json',
'src' ] */
console.log(result);遍历目录
遍历目录是操作文件时的一个常见需求。比如写一个程序,需要找到并处理指定目录下的所有JS文件时,就需要遍历整个目录
遍历目录时一般使用递归算法,否则就难以编写出简洁的代码。递归算法与数学归纳法类似,通过不断缩小问题的规模来解决问题









