文件操作

文件操作


完整读文件
fs.readFile('./fs.txt', (err, data) => {   //  异步读取
	console.log(err); //  如果没有错误则为null,否则不为null
	console.log(data.toString());  //  buffer转字符串
});
let data = fs.readFileSync('./fs.txt');  //  同步读取(快)
console.log(data.toString());

完整写文件
fs.writeFile('./fs1.txt', JSON.stringify({ title: '周六' }), err => {
	console.log(err);
});
fs.writeFileSync('./fs.txt', '但愿人长久千里共婵娟');

追加写
fs.appendFile('./fs1.txt', JSON.stringify({ title: '周六' }), err => {
	console.log(err);
});

// 部分读文件
// flag:r表示读,w表示写,a表示追加写
// mode:文件的操作权限,0777,默认是0666
/*
    1:执行权限
    2:写权限
    4:读权限

    第一位默认为0
    第二位表示:文件或目录所有者的权限
    第三位表示:文件或目录所有者所属用户分组的权限
    第四位表示:其他人的权限
*/
existsSync 用来判断文件是否存在,存在则返回true,否则为false
if (fs.existsSync('./fs.txt')) {
	fs.open('./fs.txt', 'r', (err, fd) => {
		let stat = fs.statSync('./fs.txt'); //同步读取文件的信息
		let buf = new Buffer(stat.size);
		// 第一个参数fd是文件描述符,用来表示当前正在操作的文件
		// 第二个参数buffer是用来存储读取的信息的
		// 第三个参数offset表示从buf对象的第几个字节开始写入
		// 第四个参数length表示从文件中读取几个字节
		// 第五个参数position表示从文件的第几个字节开始读,默认为0
		//
		fs.read(fd, buf, 0, 5, 1, (err, bytes, buffer) => {
			console.log(err);
			console.log(bytes);
			console.log(buf.toString());
		});
		fs.closeSync(fd); //主动关闭文件,默认是可以自动关闭文件的
	});
}

// 删除文件
fs.unlinkSync('./fs1.txt');

判断当前文件是目录还是文件
let stat = fs.statSync('./demo');
console.log(stat.isDirectory()); //如果为true表示目录,否则不是
stat.isFile(); //如果为true表示文件,否则不是

// 小结:
// fs.readFile 读文件
// fs.writeFile 写文件
// fs.existsSync 判断文件是否存在
// fs.unlinkSync 删除文件
// fs.statSync 获取文件的状态
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值