var fs=require('fs');
// 1、判断是文件、还是文件夹;
fs.stat('html',function(err,stats){
console.log(stats.isDirectory());// 判断文件
console.log(stats.isFile());// 文件夹
if(err){
console.log(erro);
return false;
}
});
// 2、创建文件 mkdir();参数1:创建目录名;参数2:回调函数
fs.mkdir('css',function(err){
})
// 3、 写入文件 参数1:写入文件名;参数2:写入内容;参数3:设置字符集,可以省略不写;参数4:回调函数
// 参数1 文件存在进行覆盖,不存在自动创建
fs.writeFile('t.text','Hello world node.js','utf8',function(err){
});
// 4、在文件中追加内容 fs.appendFile
fs.appendFile('t1.text','这里写入内容',function(err){
})
// 5、读取文件 fs.readFile 参数1:读取文件名;参数2:回调函数 \
// 回调函数 参数1:错误日志;参数2:读取内容
fs.readFile('t1.text',function(err,data){
console.log(data.toString());
})
// 6、读取文件下的目录 fs.readddir
fs.readdir('html',function(err,data){
console.log(data)
})
// 重命名文件或者目录的名称 fs.rname;参数1:需要更改的文件路径;参数2:更改后的文件名;err,更改失败返回
fs.rename('html/index.html','html/a.html',function(err){
})
// rname 剪切 参数1:当前目录;参数2:新目录
fs.rename('html/styles.css','html/css/style.css',function(err){
})
// 7、删除目录 fs.rmdir;注:如果当前目录下存在文件、目录不能直接删除
fs.rmdir('t',function(err){
})
// 8、删除文件 fs.unlink
fs.unlink('html/css/style.css',function(err){
})
var fs = require('fs');
// 1、判断服务器上有么有 upload 目录,没有创建这个目录
fs.stat('upload',function(err,stats){
if(err){
fs.mkdir('upload',function(err){
if(err){
console.log(err);
}
console.log('创建成功')
})
return false;
}else{
console.log('目录已经存在')
console.log(stats.isDirectory());
}
})
//2、找到 html 目录下面的所有目录,并打印
var arr = [];
fs.readdir('html',function(err,files){
console.log(files.length)
if(err){
console.log(err);
return false;
}else{
(function getFile(i){
if(i==files.length){ //当前循环次数等于 所读文件长度,跳出循环
console.log(arr);
return false;
}
fs.stat('html/'+files[i],function(error,stats){
if(stats.isDirectory()){ // 判断是文件
arr.push (files[i]); // 是文件保存
}
//递归掉用
getFile(i+1);
})
})(0)
}
// console.log('---'+arr);
})
// js 异步执行
// for(var i=0;i<3;i++){
// setTimeout(function(){
// console.log(i)
// },100)
// }
var fs=require("fs");
var str ="通过写入流,将数据写入到文件中";
// 以文件流的方式写入数据
var writeStream = fs.createWriteStream('123.txt')
writeStream.write(str,'utf8');
// 标记写入完成
writeStream.end();
writeStream.on('finish',function(){
console.log('写入完成');
})
// 写入失败
writeStream.on('error',function(){
console.log('写入失败');
})
// 读取文件内容,写入到另一个文件中
var fs=require('fs');
var readerStream = fs.createReadStream('t.txt');
var writeStream = fs.createWriteStream('123.txt');
// 通过pipe 管道方式读取数据保存到另一个文件
readerStream.pipe(writeStream);
console.log('写入成功')