从零学习node.js之文件操作(三)

2020-06-17 06:49:51易采站长站整理

一、文件操作

在文件操作里,主要是有文件读写,创建、移动文件等。

1.1 读取文件

读取文本文件时,如.txt, .js, .json等文件,直接使用readFile就可以获取文件的内容。


// server.js
var fs = require('fs');

fs.readFile('./data.txt', 'utf-8', function(err, data){
if(err) throw err;
console.log(data);
});

读取图片时,我们是不能直接输出到控制台中的,是需要创建一个服务器,然后在浏览器上进行查看。其实在上节中,我们已经了解过显示图片的过程了。


// server.js
var http = require('http'),
fs = require('fs');

http.createServer(function(request, response){
// 使用二进制方式读取图片
fs.readFile('./img/test.png', 'binary', function(err, file){
if( err ) throw err;
// 当前数据以image/png方式进行输出
response.writeHead(200, {"Content-Type": "image/png"});
response.write(file, 'binary');
response.end();
});
}).listen(3000);
console.log('server has started...');

打开浏览器:127.0.0.1:3000,就能看到图片了。

1.2 写入文件

将字符串写入到文件文件中,是非常简单的操作,使用

writeFile
即可搞定:


var fs = require('fs');

var data = '从一开始,就选择了做前端开发,因为觉得前端开发更贴近用户,能够倾听用户的声音,更好玩,更有意思,美的更直观。我们总是在尝试最新的技术,尝试更炫的效果,希望更能优化用户的体验效果!';

fs.writeFile('./test.txt', data, function(err){
if(err) throw err;
console.log('写入数据成功...');
});

writeFile
方法,在没有文件时会创建文件并写入;若文件存在则内容被覆盖。

1.3 创建或文件重命名

根据

writeFile
的特性,可以使用
writeFile
写入空字符串的方式创建文件。

同时,

fs.open
也可以创建文件:


// 打开模式可以使用 w | w+ | a | a+
// 这些模式在打开不存在的文件时,会创建文件
// fd为一个整数,表示打开文件返回的文件描述符,window中又称文件句柄
fs.open(Date.now()+'.txt', 'a+', function(err, fd){
if(err) throw err;
console.log(fd);
})

在文件系统中,有一个

fs.rename
的方法,顾名思义,对文件(文件夹)进行重命名。