文件操作关键字:

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

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

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

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

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

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

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

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

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

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

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

上代码:

  1. const http=require('http');
  2. const fs=require('fs');
  3.  
  4. var server=http.createServer(function(req,res){
  5. var file_name='./www'+req.url;
  6.  
  7. fs.readFile(file_name,function(err,data){
  8. if(err){
  9. res.write('读取失败');
  10. }else{
  11. res.write(data);
  12. }
  13. res.end()
  14. })
  15. });
  16.  
  17. server.listen(8090)

目录结构如下图:

a.html:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>Document</title>
  8. <style>
  9. div{width: 100px;height: 100px;background-color: #ccc}
  10. </style>
  11. </head>
  12. <body>
  13. <div>
  14.  
  15. </div>
  16. </body>
  17. </html> 

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

返回结果如下:

node学习笔记3——文件操作fs的更多相关文章

  1. NodeJS学习笔记 (2)文件系统操作-fs(ok)

    原文:https://github.com/chyingp/nodejs-learning-guide/blob/master/%E6%A8%A1%E5%9D%97/fs.md#%E9%80%9A%E ...

  2. 【java学习笔记】文件操作

    文件操作 java.io.File ①创建删除文件及目录 ②查看文件及目录属性 ③文件过滤器 (PS:不包括文件读写数据) 1.单个文件 创建单个文件,查看属性,删除单个文件. package tmp ...

  3. python学习笔记(三):文件操作和集合

    对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 文件基本操作: f = open('file.txt','r') #以只读方式打开一个 ...

  4. Java 学习笔记(14)—— 文件操作

    java文件操作主要封装在Java.io.File中,而文件读写一般采用的是流的方式,Java流封装在 java.io 包中.Java中流可以理解为一个有序的字符序列,从一端导向到另一端.建立了一个流 ...

  5. python学习笔记之文件操作(三)

    这篇博客小波主要介绍一下python对文件的操作 对文件的操作主要分为三步: 1.打开文件获取文件的句柄,句柄也是文件描述符 2.通过文件句柄操作文件 3.关闭文件. 现有以下文件,是小波随写的周杰伦 ...

  6. python学习笔记4(文件操作)

    文件操作: 1.f=open(”caidan”,”w”,encoding=”utf8”)      直接打开一个文件,如果文件不存在则创建文件 f.close() 2.with open (”caid ...

  7. python学习笔记三 文件操作(基础篇)

    文件操作 打开文件 open(name[,mode[,buffering]])   open函数使用一个文件名作为强制参数,然后返回一个文件对象.[python 3.5 把file()删除掉]   w ...

  8. python的学习笔记01_5文件操作

    一,文件操作基本流程. 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众 ...

  9. C++ 学习笔记之——文件操作和文件流

    1. 文件的概念 对于用户来说,常用到的文件有两大类:程序文件和数据文件.而根据文件中数据的组织方式,则可以将文件分为 ASCII 文件和二进制文件. ASCII 文件,又称字符文件或者文本文件,它的 ...

随机推荐

  1. java类加载,简单认识

    java类加载,简单认识 在第一次创建一个类的对象或者第一次调用一个类的静态属性和方法的时候,会发生类加载 类加载期间,如果发现有静态属性,就给对应的静态属性分配内存空间,并赋值 这个过程完成之后,今 ...

  2. centos 7 安装python3和pip

    目前,我认为还是使用系统自带的稳定版最好,因为:该版本肯定是centos7开发组深思熟虑的,稳定性好,另外,由于系统自带,兼容性好,第三,和之配套的软件齐全,如果不用系统的,建议还是不要在源码编译安装 ...

  3. CentOS与RedHat的关系

    一.CentOS 与 RedHat 的关系 RedHat 在发行的时候,有两种方式:二进制的发行方式以及源代码的发行方式.无论是哪一种发行方式,你都可以免费获得(例如从网上下载),并再次发布.但如果你 ...

  4. 【Android】1.1 开发环境安装和配置

    分类:C#.Android.VS2015: 创建日期:2016-01-20 2016-08-03说明:此版本已过时,最新版本见本博客置顶的内容. 一.安装JDK.SDK.NDK 无论是用C#和VS20 ...

  5. MyBatis传入集合 list 数组 map参数的写法

    foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合.foreach元素的属性主要有item,index,collection,open,separator,close.ite ...

  6. Struts2对值的推断

    目的是想将jsp中的input输入: <input class="inputstyle" type="text" value="<s:pr ...

  7. 行为类模式(九):策略(Strategy)

    定义 针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换.策略模式使得算法可以在不影响到客户端的情况下发生变化. UML 优点 策略模式提供了管理相关的算法族的办法.策 ...

  8. calcite 理论

    https://blog.csdn.net/yunlong34574/article/details/46375733 https://cloud.tencent.com/developer/arti ...

  9. c++中数据表如何转成业务实体--map和结构体的相互转换

    应用场景:如何把数据库表中的一行转换成一个业务实体结构体,c#和java中都有实体框架,表到实体的转换很方便,c++中缺少这些框架,但是有一些折中的办法去做.其实问题的本质是:map如何转成结构体. ...

  10. pyspark 编写 UDF函数

    pyspark 编写 UDF函数 前言 以前用的是Scala,最近有个东西要用Python,就查了一下如何编写pyspark的UDF. pyspark udf 也是先定义一个函数,例如: def ge ...