首页 > Web开发 > 详细

[Node.js] Node.js Buffers

时间:2015-06-18 01:51:16      阅读:276      评论:0      收藏:0      [点我收藏+]
>> node
>>fs.readFile(‘finnish.txt‘, function(err,data){
    console.log(data);
});
// Output string is not what we want

>>fs.readFile(‘finnish.txt‘, function(err, data){
    console.log(data.toString());
});
// Ouptu is ok

/* Encoding */
>>fs.readFile(‘finnish.txt‘, ‘utf8‘, function(err,data){
    console.log(data);
});
// Ouptu is ok

>>str = ‘\u0048\u0065\u006c\u006f \u0057\u006f\u0072\u006c\u0064\u0021‘;
‘Hello World‘

str.length
12

Buffer.byteLength(str, ‘utf8‘)
12

But the Buffer.byteLength and str.length are not equal!!

------

>>str = ‘\u00bd + \u00bc = \u00be‘;
‘1/2 + 1/4 = 3/4‘;

str.length
9

Buffer.byteLength(str, ‘utf8‘)
12


-----

>>buf = new Buffer(5)
>>buf.write(‘hello wolrd‘);
>>buf.toString()
‘hello‘

>>buf.write(‘hello‘, 2);
hehel


>>buf.write(‘xxxx‘, 2, 1);
>>buf.toString()
hexel

>>buf.write(‘xxxx‘, 2, 2);
>>buf.toString()
hexxel

>>buf.write(‘yyyy‘, 2, 1, ‘utf8‘)
>>buf.toString()
heyel


-----

buf1 = new Buffer(‘1234‘)
buf2 = new Buffer(‘0123‘)
buf3 = new Buffer(‘1234‘)

buf1.compare(buf2)
1 //not equal
buf1.compare(buf3)
0 //equal

buf1.equals(buf2)
false


>>var arr = [buf1, buf2]
>>arr.sort(Buffer.compare)
[ <Buffer 30 31 32 33>, <Buffer 31 32 33 34> ]

>>buf.toJSON()
{type: ‘Buffer‘, data: [104, 101, 121, 101, 108]}


>>  buf = new Buffer(‘Hello World!‘);
>>  buf2 0 buf.slice(0,3)

buf2.toString();
‘Hel‘

 

In this lesson, we cover the Node.js Buffer object in detail. Not only will you learn that the buffer object is a reference to a memory space outside of the V8 engine, but you will learn practical methods to access it, modify it, and convert it to standard Javascript objects that can be used by your code. Examples and discussion are provided for using the toString() method, determining the byte length of the buffer, writing to a buffer, how to avoid truncating data, comparing buffers for equality using both compare() and equals(), and copying buffers using slice().

[Node.js] Node.js Buffers

原文:http://www.cnblogs.com/Answer1215/p/4584762.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!