1、表达式

在命令行输入  node回车后,可以在后边输入相应的表达式,进行运算操作
 

2、阻塞文件读取

var data=fs.readFileSync('input.txt', 'utf-8');
 

3、非阻塞文件读取

fs.readFile('input.txt',function(err,data){
if(err){
console.log(err);
}else{
console.log(data.toString());
}
});
 

4、将文件写入缓冲区

var buf=new Buffer('伍姣龙', 'utf-8');//一个汉子在 utf-8下占3个字节
console.log(buf.length);//9
console.log(buf.toString());//伍姣龙
console.log(buf.toJSON(buf));//[ 228, 188, 141, 229, 167, 163, 233, 190, 153 ]
5、事件驱动【关键字:eventEmitter.on('事件名',function(){})| eventEmitter.emit('事件名') 】
  1. var events=require('events');
  2. //实例化EventLitter对象
  3. var eventEmitter=new events.EventEmitter();
  4. eventEmitter.addListener('connection',function(){
  5. console.log('连接陈宫2!');
  6. });
  7. eventEmitter.addListener('connection',function(){
  8. console.log('连接陈宫3');
  9. });
  10. eventEmitter.on('connection',function(){
  11. console.log('连接成功1');
  12. //触发 data_received
  13. eventEmitter.emit('data_received');
  14. });
  15. eventEmitter.on('data_received',function(){
  16. console.log('数据接收成功');
  17. });
  18. //触发事件
  19. eventEmitter.emit('connection');
  20. console.log('程序执行完毕');
6、文件流
【读取流】 四大事件  data   end  error  finish【用在写入的时候】
  1. var fs=require('fs');
  2. var zlib=require('zlib');//文件解压缩模块
  3. var read=function(){
  4. var data='';
  5. var readerStream=fs.createReadStream('input.txt','utf-8');
  6. //当有数据时触发
  7. readerStream.on('data',function(chunk){
  8. console.log('正在读取数据');
  9. data+=chunk;
  10. });
  11. //文件没有更多数据时候触发
  12. readerStream.on('end',function(){
  13. console.log('数据读取完毕:'+data);
  14. });
  15. //在接受和写入过程出错时触发
  16. readerStream.on('error',function(err){
  17. console.log(err.stack);
  18. });
  19. }
【写入流】会创建一个output.txt文件
  1. var write=function(){
  2. //创建写入流
  3. var writeStream=fs.createWriteStream('output.txt');
  4. var data='我是一个好孩子';
  5. writeStream.write(data,'utf-8');
  6. writeStream.end();
  7. writeStream.on('finish',function(){
  8. console.log('写入完成');
  9. });
  10. writeStream.on('error',function(err){
  11. console.log(err.stack);
  12. });
  13. console.log('程序执行完成');
  14. }
【管道流】 从一个流中读取然后写到另一个输出流
  1. var gdStream=function(){
  2. var readerStream=fs.createReadStream('input.txt');
  3. var writeStream=fs.createWriteStream('output.txt');
  4. readerStream.pipe(writeStream);
  5. console.log('程序执行完成');
  6. }
【链式流】文件解压缩操作
  1. /链式流创建压缩文件
  2. var gZipStream=function(){
  3. //var fs=require('fs');
  4. fs.createReadStream('input.txt').pipe(zlib.createGzip()).pipe(fs.createWriteStream('input.txt.gz'));
  5. }
  6. //gZipStream();
  7. //解压文件
  8. var gunZip=function(){
  9. fs.createReadStream('input.txt.gz').pipe(zlib.createGunzip()).pipe(fs.createWriteStream('input2.txt'));
  10. }
  11. gunZip();
7、简单服务器创建并设置请求头
  1. var http=require('http');
  2. var server=http.createServer(function(req,res){
  3. var body='hello word';
  4. res.setHeader('Content-Length',body.length);
  5. res.setHeader('Content-Type','text/plain');
  6. res.statusCode=302;
  7. res.end(body);
  8. });
  9. server.listen(3000);
 
 
 

1-2 nodejs小节 文件读取的更多相关文章

  1. NodeJS文件读取:感恩常在--抓把糖果,愉悦客人

    通过上一篇文章“NodeJS服务器:一行代码 = 一个的HTTP服务器”,我们已经开启了NodeJS之旅,开发了一个监听在8000端口的HTTP服务器,虽然功能很简单,但是,已经让我们感受到用Node ...

  2. NodeJs之文件上传

    NodeJs之文件上传 一,介绍与需求 1.1,介绍 1,multer模块 multer用于处理文件上传的nodejs中间件,主要跟express框架搭配使用,只支持表单MIME编码为multipar ...

  3. NodeJS遍历文件生产文件列表

    本文实例讲述了NodeJS遍历文件生产文件列表功能.分享给大家供大家参考,具体如下: 功能需求:在工作中我们可能经常需要知道项目中静态文件列表发布,一个一个去检索写,那就太苦逼了. 要想知道里面的文件 ...

  4. 使用 nodejs 对文件进行批量重命名

    0. 前言 从B站下载了一点视频,硕鼠自动将标题添加到了每个文件名的前面,导致文件名过长,不方面查看文件的具体内容. 虽然只有二十几个文件,但是手动删除前缀还是个不小的工作量,还有可能删除错误.考虑到 ...

  5. java中的文件读取和文件写出:如何从一个文件中获取内容以及如何向一个文件中写入内容

    import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.Fi ...

  6. php xml 文件读取 XMLReader

    php xml 文件读取 <?php /** $xmlString = '<xml> <persons count="10"> <person ...

  7. 详解Js中文件读取机制

    前言,文件读取是提高应用体验度的必须接口,应用场景中需求很频繁. Js处理文件读取,由于处于安全方面的考虑,在2000年以前,都是以“<input type="file"&g ...

  8. C# 文件操作 把文件读取到字节数组

    string zipfile = "c:\\a.zip"; //方法1 FileStream fs = new FileStream(zipfile, FileMode.Open) ...

  9. H5学习系列之文件读取API--本文转自http://blog.csdn.net/jackfrued/article/details/8967667

    HTML5定义了FileReader作为文件API的重要成员用于读取文件,根据W3C的定义,FileReader接口提供了读取文件的方法和包含读取结果的事件模型. FileReader的使用方式非常简 ...

随机推荐

  1. BFC,定位,浮动,7种垂直居中方法

    目录 一.BFC与IFC 1.1.BFC与IFC概要 1.2.如何产生BFC 1.3.BFC的作用与特点 二.定位 2.2.relative 2.3.absolute 2.4.fixed 2.5.z- ...

  2. SSIS Design5:使用暂存

    以数据流的方式来设计Package,将核心数据处理移动到数据流中,一般情况下,能够减少临时表的创建,获得较高的处理性能,在某些情况下,使用暂存表(staging table)能够优化package设计 ...

  3. Javascript算法系列之快速排序(Quicksort)

    原文出自: http://www.nczonline.net/blog/2012/11/27/computer-science-in-javascript-quicksort/ https://gis ...

  4. jQuery源码分析系列(35) : Ajax - jsonp的实现与原理

    ajax的核心是通过XmlHttpRequest获取非本页内容,而jsonp的核心则是动态添加<script>标签来调用服务器提供的js脚本 json核心就是:允许用户传递一个callba ...

  5. 一起学微软Power BI系列-官方文档-入门指南(1)Power BI初步介绍

    我们在前一篇文章微软新神器-Power BI,一个简单易用,还用得起的BI产品中,我们初步介绍了Power BI的基本知识.由于Power BI是去年开始微软新发布的一个产品,虽然已经可以企业级应用, ...

  6. EntityFramework之Log(五)

    关于日志 属性日志 DbContext.Database.Log 属性被设置为一个委托,该委托能接受带有一个字符串参数的任何方法,最主要的是,通过设置它到 TextWriter 的 Write 方法将 ...

  7. Visual Studio 2015无法进行Package Restore的原因和解决方案

    这篇文章是记录在我的当前电脑上面,安装Visual Studio 2015 Community Edition出现的无法进行Package Restore的问题,很可能在你的电脑上面无法重现.我的环境 ...

  8. 用javascript做一个视频播放器

    以前我们在网页上播放视频,都是要麻烦flash来实现.看着那一大段的<object>真心觉得累.随着html5的不断普及,现在是时候使用html5提供的video元素来做点正经事了,但是要 ...

  9. java 中多线程的同步函数的运用

    /* * 需求: * 银行有一个金库 * 有两个储户,分别存300元.每次存100 , 存三次 * * 这个是有线程问题的, * * 我们应该通过下边的三个方法来查找问题 * 1.明确哪些代码是多线程 ...

  10. Windows Server 2012 为什么没有“磁盘清理”选项了?

    用习惯了客户端版的Windows,对于磁盘清理想必大家都不会陌生,他具有安全.快捷.准确.集中化的删除系统中的临时文件.管理系统还原卷影副本.添加删除程序的快捷入口等便捷功能,而在Server版的Wi ...