nodejs学习整理(三)

接上一篇的核心模块(querystring+url)
2.文件系统模块 fs

异步同步函数作用
stat(path,callback)statSync(path)查询文件状态
mkdir(path,callback)mkdirSync创建目录
rmdir(path,callback)rmdirSync删除目录
readdir(path,callback)readdirSync读取目录,返回数组
readFIle(file,callback)readFileSync读取文件
writeFIle(file,data,callback)writeFileSync(file,data)写入文件,文件不存在则创建文件,文件存在会覆盖原有内容
appendFile(file,data,callback)appendFileSync(file,data)在文件内容后面写入数据

(1)stat:

const fs=require('fs');
fs.stat('./33',(err,stats)=>{
     if(err)
	{
	throw err;
	}
   //console.log(stats);
   console.log(stats.isFile());
   console.log(stats.isDirectory());
});
console.log('end');//异步,在stat函数之前完成
//statSync
const fs=require('fs');
var stats=fs.statSync('./2.js');
console.log(stats.isFile());

(2)mkdir:

fs.mkdir('./5',(err)=>{
	if(err) throw err;
	console.log('success');
});


fs.mkdirSync('./8');

(3)readdir:

fs.readdir('./8',(err,files)=>{
	if(err) throw err;
	//console.log(files);
});
var arr=fs.readdirSync('./8');
//console.log(arr);
for(var key in arr)
{
	console.log(arr[key]);
}

(4)readFile:

const fs=require('fs');
fs.readFile('./data.txt',(err,data)=>{
	if(err) throw err;
	console.log(data.toString());
});

(5)writeFile:

const fs=require('fs');

console.log(fs.readFileSync('./data.txt').toString());
fs.writeFile('./data.txt','codebody.com',(err)=>{
	if(err)  throw err;
	console.log('success');
});
const fs=require('fs');
var res=fs.existsSync('1.txt');
if(res)
{
	console.log('file exists');
	fs.writeFileSync('./1.txt','HelloWorld!');
	console.log(' write success');
}
else{
	console.log('file not exists');
    fs.writeFileSync('./1.txt','HelloWorld!');
	console.log('write success');

(6)appenFileSync:

var person={
	eid:2,
		ename:'tom',
		sex:1,
		salary:8000
}
for(var key in person)
{
fs.appendFileSync('./1.txt',`${key}:${person[key]}\n`);
}

综合应用:创建num.txt,每隔2秒在 文件中添加一个数字,数字从1开始,到10结束,每次加1

const fs=require('fs');
var count=1;
var str='HelloWorld!';
var res=fs.existsSync('./num.txt');
var timer2=setInterval(function(){
	 res=fs.existsSync('./num.txt');
if(!res)
{
	console.log('num文件不存在,开始创建新文件');
	var timer=setTimeout(function(){fs.writeFileSync('./num.txt','文件打开次数:'+count);},2000);
	console.log('新建文件完成');
}
else{
	console.log('文件已找到,正在输入HelloWorld!');
	fs.appendFileSync('./num.txt','\n'+str);
	count++;
	fs.appendFileSync('./num.txt','\n文件打开次数:'+count);
}
if(count>10){
	clearInterval(timer2);
	clearTimeout(timer);
}
},2000);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值