مقایسه بافر ها
نمونه :
var buffer1 = new Buffer(\'ABC\');
var buffer2 = new Buffer(\'ABCD\');
var result = buffer1.compare(buffer2);
if(result < 0) {
console.log(buffer1 +\" comes before \" + buffer2);
} else if(result === 0) {
console.log(buffer1 +\" is same as \" + buffer2);
} else {
console.log(buffer1 +\" comes after \" + buffer2);
}
خروجی :
ABC comes before ABCD
اسکن کردن بافر ها :
buf.copy(targetBuffer[, targetStart][, sourceStart][, sourceEnd])
Streams
Streams اشیایی می باشند که به شما قابلیت میدهند اطلاعات را از یک منبع بخوانید یا این که طراحی اپلیکیشن در مشهد اطلاعات را به یک مقصد بنویسید.
در Node.js ، چهار نوع Stream وجود داراست :
Readable : استریمی که برای عملیات قرائت استعمال میشود.
Writable : استریمی که برای عملیات تایپ کردن به کار گیری میشود.
Duplex : استریمی که میتواند هم برای عملیات تلاوت و هم برای تایپ کردن استعمال شود.
Transform : یک نوع جریان دوبلکس که در آن خروجی بر پایه ی ورودی به حساب آوردن میگردد.
هر نوع Stream یک مثال EventEmitter میباشد و یکسری روی داد را در طیهای گوناگون ارسال مینماید.
data : این اتفاق افتاد هنگامی فعال می گردد که داده ای برای قرائت در دسترس باشد.
end ؛ این روی داد وقتی فعال میشود که داده دیگری برای قرائت وجود نداشته باشد.
error : این روی داد وقتی فعال می گردد که در اخذ یا این که تایپ کردن اطلاعات خطایی وجود داشته باشد.
finish : این اتفاق افتاد هنگامی فعال میگردد که تک تک اطلاعات به سیستم زیرین منتقل شوند.
پیرو برای تلاوت و تایپ کردن استریم ها نمونه خواهیم زد.
تلاوت از یک جریان
یک پوشه متنی با اسم input.txt با محتوای تحت ساخت فرمائید :
Manataz provides the most complete and specialized programming services
یک پوشه js با اسم main.js با کد ذیل ساختوساز فرمایید :
var fs = require(\"fs\");
var data = \'\';
// Create a readable stream
var readerStream = fs.createReadStream(\'input.txt\');
// Set the encoding to be utf8.
readerStream.setEncoding(\'UTF8\');
// Handle stream events --> data, end, and error
readerStream.on(\'data\', function(chunk) {
data += chunk;
});
readerStream.on(\'end\',function() {
console.log(data);
});
readerStream.on(\'error\', function(err) {
console.log(err.stack);
});
console.log(\"Program Ended\");
اینک main.js را جاری ساختن فرمایید تا فیض را مشاهده کنید :
$ node main.js
پذیرش خروجی :
Program Ended
Manataz provides the most complete and specialized programming services
تایپ کردن Stream
یک پوشه js با اسم main.js با کد ذیل ساختوساز نمائید :
var fs = require(\"fs\");
var data = \'Simply Easy Learning\';
// Create a writable stream
var writerStream = fs.createWriteStream(\'output.txt\');
// Write the data to stream with encoding to be utf8
writerStream.write(data,\'UTF8\');
// Mark the end of file
writerStream.end();
// Handle stream events --> finish, and error
writerStream.on(\'finish\', function() {
console.log(\"Write completed.\");
});
writerStream.on(\'error\', function(err) {
console.log(err.stack);
});
console.log(\"Program Ended\");
اینک main.js را ایفا نمائید تا سود را مشاهده کنید :
$ node main.js
خروجی را وریفای فرمائید :
Program Ended
Write completed.
فعلا output.txt ساخت و ساز گردیده در فهرست فعلی شمارا گشوده نمایید.
می بایست مشمول موردها ذیل باشد :
Simply Easy Learning