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

文件操作关键字:

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

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

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

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

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

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

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

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

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

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)

目录结构如下图:

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

 返回结果如下:

猜你喜欢

转载自www.cnblogs.com/sese/p/9265889.html