您的位置:首页 > Web前端 > Node.js

Node.Js Buffer类(缓冲区)-(三)文件读取实例

2016-09-12 14:29 716 查看
一、读取图片,base64格式和二进制相互转换

var fs=require('fs');
var path=require('path');
var file=path.resolve('F:/MyDocument/Picture/Icon/使用过的/play.png');
var content=new Buffer(0);//累计合并读取片段
fs.readFile(file,function(err,chunk){
if(err)
return console.error(err);
console.log(chunk);
//将图片转换成base64 字符串
console.log(chunk.toString('base64'));
console.info('*********************');
//合并Buffer
content=Buffer.concat([content,chunk]);
console.log(content.toString('base64'));

//将base64字符串转换成二进制保存成图片
var imgData=new Buffer(content,'base64');
fs.writeFile(path.resolve('/test1/logo.png'),imgData,function(err){
if(err)
return console.error(err);
console.log('保存文件成功');
});
});

二、读取文本文件,及支持字符编码之间相互转换

var fs=require('fs');
var path=require('path');
var file=path.resolve('F:/MyDocument/Picture/Icon/使用过的/play.png');
var content=new Buffer(0);//累计合并读取片段
fs.readFile(file,function(err,chunk){
if(err)
return console.error(err);
console.log(chunk);
//将图片转换成base64 字符串
console.log(chunk.toString('base64'));
console.info('*********************');
//合并Buffer
content=Buffer.concat([content,chunk]);
console.log(content.toString('base64'));

//将base64字符串转换成二进制保存成图片
var imgData=new Buffer(content,'base64');
fs.writeFile(path.resolve('/test1/logo.png'),imgData,function(err){
if(err)
return console.error(err);
console.log('保存文件成功');
});
});
三、读取流操作实例

var fs=require('fs');
var path=require('path');
var file=path.resolve('/test1/one.txt');
var rs=fs.createReadStream(file,{highWaterMark:5});
var dataArr=[],//存储读取的结果集合
len=0;
/*
*  1.读取结果为Buffer对象
*/
rs.on('data',function(chunk){
console.log(Buffer.isBuffer(chunk));
dataArr.push(chunk);
len+=chunk.length;
});
rs.on('end',function(){
var	result=Buffer.concat(dataArr,len).toString();
console.log(result);
});


Buffer 类二:http://blog.csdn.net/u011127019/article/details/52512353

Buffer 类一:http://blog.csdn.net/u011127019/article/details/52512242
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: