এটি গুগলের উপরে উঠে আসে, তাই আমি আসল প্রশ্নটি সম্পর্কে কিছু প্রাসঙ্গিক তথ্য যুক্ত করতে চাই (জোর আমার):
নোড.জেএস এর fs.readFile () স্ট্রিংয়ের পরিবর্তে বাফারটি কেন দেয়?
কারণ ফাইলগুলি সর্বদা পাঠ্য হয় না
আপনি যদি প্রোগ্রামার হিসাবে এটি জানেন তবে: আপনি যে ফাইলটি পড়ার চেষ্টা করছেন তাতে নোডের কোনও ধারণা নেই। এটি কোনও পাঠ্য ফাইল হতে পারে তবে এটি একটি জিপ সংরক্ষণাগার বা জেপিজির চিত্রও হতে পারে - নোড জানে না।
কারণ পাঠ্য ফাইল পড়া জটিল y
এমনকি নোড জানত যে এটি কোনও পাঠ্য ফাইলটি পড়তে হবে, তবুও কোন অক্ষর এনকোডিং ব্যবহৃত হবে তা এখনও বুঝতে পারে না (যেমন ফাইল মানচিত্রে বাইটগুলি কীভাবে মানব-পঠনযোগ্য অক্ষরগুলিতে পরিণত হয়), কারণ অক্ষর এনকোডিং নিজেই ফাইলটিতে সংরক্ষণ করা হয় না ।
কমবেশি আত্মবিশ্বাসের সাথে টেক্সট ফাইলগুলির অক্ষর এনকোডিংয়ের অনুমান করার উপায় রয়েছে (এটি কোনও ফাইল খোলার সময় পাঠ্য সম্পাদকরা যা করেন) তবে আপনি সাধারণত আপনার সুস্পষ্ট নির্দেশনা ছাড়াই অনুমানের উপর নির্ভর করতে চান না।
বাফারদের উদ্ধার!
সুতরাং, কারণ এটি এই সমস্ত বিবরণটি জানে না এবং জানতে পারে না, নোড কেবলমাত্র বাইটের জন্য ফাইলের বাইটটি পড়বে, তার বিষয়বস্তু সম্পর্কে কিছু না ধরে।
ফিরে আসা বাফারটি হ'ল: কাঁচা বাইনারি সামগ্রীর জন্য একটি অপ্রচলিত ধারক। এই বিষয়বস্তুর কীভাবে ব্যাখ্যা করা উচিত তা বিকাশকারী হিসাবে আপনার উপর নির্ভর করে।