۳۰ روز با Node – روز بیست و دوم: ماژول دیکد کننده‌ی رشته (String Decoder)

Nodejs-decoder

دیکد کننده‌ی رشته (String Decoder)

ماژول دیکد کننده‌ی رشته (String Decoder) در node.js برای ایجاد یک API که وظیفه ­ی دیکد کردن شی از کلاس بافر به رشته‌ها را دارد، مورد استفاده قرار می‌گیرد، همچنین ماژول دیکد کننده­ ی رشته (String Decoder) به شیوه ایی این دیکد کردن را انجام می‌دهد که مجموعه کاراکترهای multibyte (چند بایتی) نظیر UTF8 و UTF16 را نیز پوشش می‌دهد.

ما می‌توانیم به شیوه‌ی زیر ماژول دیکد کننده‌ی رشته را درون node.js، درخواست (یا require) کنیم.

var sd = require('string_decoder').StringDecoder;

متدهای دیکدکننده­ ی رشته

کلاس String Decoder  تنها دو متد دارد که به شرح زیرند:

1- stringDecoder.write buffer: وظیفه­ ی این متد این است که رشته‌ی دیکد شده‌ی یک بافر مشخص را برگرداند. دقت کنید که ما بافر را به عنوان یک آرگومان به این متد، پاس می‌دهیم. برای درک بهتر کارکرد این متد، مثال زیر را مشاهده کنید.

//name of the file: write.js
var stringDecoder = require('string_decoder').StringDecoder;
var sd = new stringDecoder('utf8');
var buff = Buffer('data to be buffered');
//Print the buffered data
console.log(buff); 
//Print the decoded buffer  
console.log(sd.write(buff));

ما می‌توانیم برنامه بالا را به صورت زیر اجرا کنیم.

stringDecoder write

2- stringDecoder.end buffer: با استفاده از این متد می‌توان مقدار باقی‌مانده در بافر داخلی را بازگشت داد (دقت نمایید که بافر داخلی بخشی از حافظه است که برای نگهداری داده‌ها به صورت موقت مورد استفاده قرار می‌گیرید، داده‌هایی که در این قسمت قرار می‌گیرند برای ذخیره‌سازی به حافظه اصلی منتقل می‌شوند).

خلاصه

در درس امروز از سلسله دروس 30 روز با نود جی اس،  ما در مورد ماژول دیکد کننده‌ی رشته (String Decoder) در node.js با همدیگر صحبت کردیم. ماژول دیکد کننده‌ی رشته (String Decoder) برای دیکد کردن اشیاء از نوع کلاس بافر به رشته‌ها مورد استفاده قرار می‌گیرد. ما همچنین در مورد متدهای کلاس دیکد کننده‌ی رشته (String Decoder) که متد stringDecoder.write buffer و متد stringDecoder.end  [buffer] می‌باشند، یاد گرفتیم.

نویسنده شوید
دیدگاه‌های شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.