文件操作关键字:

http('fs') ——  请求 node 里面的 http 模块

readFile ——  读文件,参数包括 文件名,回调函数
writeFile ——  写文件,参数包括 文件名,修改的内容,回调函数
 
先看一下文件目录:
node学习笔记3——文件操作fs-LMLPHP
 
来个新鲜出炉的 关于readFile 的栗子:
const fs = require('fs');
//readFile(文件名,回调函数)
fs.readFile('aaa.txt',function (err,data) {
if(err){
console.log('读取失败');
}else{
console.log(data);
}
});

aaa.txt里面的内容如下图:

node学习笔记3——文件操作fs-LMLPHP

此时我们执行fs.js,返回结果如下图:

node学习笔记3——文件操作fs-LMLPHP

这里的Buffer表示输出的是 原始的二进制数,我们可能通过 data.toString()返回实际的字符串。

再来个色香味具全的 关于wtriteFile 的栗子:

//writeFile(文件名,修改的内容,回调函数)
fs.writeFile('bbb.txt','快滚去学习',function (err) {
console.log(err);
})

bbb.txt里面的内容如下图:

node学习笔记3——文件操作fs-LMLPHP

此时我们执行该js之后,可以看到bbb.txt里面的文字变成了 “快滚去学习”。

node学习笔记3——文件操作fs-LMLPHP

fs这样使用没有任何意义,上面2个例子只是为了加深对readFile及writeFile的理解。我们应该跟数据库绑定到一起使用才能发挥它的价值。上一节我们讲了如何搭建服务器

我们怎么将fs与createServer结合起来呢?

上代码:

const http=require('http');
const fs=require('fs'); var server=http.createServer(function(req,res){
var file_name='./www'+req.url; fs.readFile(file_name,function(err,data){
if(err){
res.write('读取失败');
}else{
res.write(data);
}
res.end()
})
}); server.listen(8090)

目录结构如下图:

node学习笔记3——文件操作fs-LMLPHP

a.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
div{width: 100px;height: 100px;background-color: #ccc}
</style>
</head>
<body>
<div> </div>
</body>
</html> 

浏览器里面输入:http://localhost:8090/a.html

返回结果如下:

node学习笔记3——文件操作fs-LMLPHP

04-20 19:36
查看更多