টেক্সট ↔ বাইনারি কনভার্টার
টেক্সট
বাইনারি
প্রযুক্তিগত বিবরণ
টেক্সট ↔ বাইনারি কনভার্টার কীভাবে কাজ করে
টুলটি কী করে
টেক্সট ↔ বাইনারি টুলটি টেক্সটকে তার বাইনারি রিপ্রেজেন্টেশনে এবং সেখান থেকে আবার টেক্সটে রূপান্তর করে। প্রতি অক্ষরে ৮ বিট হলে ইনপুট UTF-8 বাইট হিসেবে এনকোড হয়; প্রতি অক্ষরে ১৬ বিট হলে প্রতিটি code unit সরাসরি আউটপুট হয়। Separator (space, comma, newline, বা none) আউটপুটকে পড়া বা পেস্ট করা সহজ করে। ডিকোডিং এই separator-গুলোর যেকোনো কম্বিনেশন গ্রহণ করে, এমনকি বিটগুলো একসাথে জোড়া লাগানো স্ট্রিংও—যতক্ষণ মোট দৈর্ঘ্য কনফিগার করা bit-group size-এর গুণিতক থাকে।
ডেভেলপারদের সাধারণ ব্যবহারক্ষেত্র
শিক্ষক ও শিক্ষার্থীরা ASCII এবং UTF-8 কীভাবে অক্ষরকে বাইট হিসেবে এনকোড করে তা ভিজুয়ালাইজ করতে এই টুল ব্যবহার করেন। এমবেডেড ডেভেলপাররা মেসেজ payload-এর টেস্ট ফিক্সচার প্রস্তুত করেন। সিকিউরিটি অ্যানালিস্টরা ক্যাপচার বা রিভার্স ইঞ্জিনিয়ারিং লেখালেখি থেকে কপি করা বাইনারি blob ডিকোড করেন। নিজের bit-packing স্কিম ইমপ্লিমেন্ট করার সময় বা টিমমেটকে endianness ও character encoding বোঝানোর সময় দ্রুত sanity check হিসেবেও এটি কাজে লাগে।
ডেটা ফরম্যাট, টাইপ বা ভ্যারিয়েন্ট
প্রতি অক্ষরে ৮ বিট হলে, টুলটি UTF-8 দিয়ে টেক্সটকে round-trip করে, ফলে অ্যাকসেন্টেড অক্ষর এবং CJK আইডিওগ্রাফ সঠিকভাবে এনকোড ও ডিকোড হয় (যেমন, 'é' হয় 11000011 10101001)। প্রতি অক্ষরে ১৬ বিট হলে, টুলটি UTF-16 code unit আউটপুট করে, যা JavaScript অভ্যন্তরীণভাবে স্ট্রিং কীভাবে উপস্থাপন করে তার সাথে মিলাতে উপকারী। Separator-গুলো সম্পূর্ণই কসমেটিক — ডিকোডার whitespace, কমা, এবং newline নরমালাইজ করে।
সাধারণ ভুল ও এজ কেস
একই ইনপুটে ৮-বিট এবং ১৬-বিট গ্রুপ মেশালে ভুল আউটপুট হবে — একটি বেছে নিয়ে ধারাবাহিক থাকুন। UTF-16 surrogate pair দুটি আলাদা ১৬-বিট গ্রুপ হিসেবে আউটপুট হয়; প্রতি অক্ষরে ৮ বিটে এগুলো ডিকোড করার চেষ্টা করলে মূল অক্ষরটি ফিরে আসবে না। Separator ছাড়া বিট স্ট্রিং ডিকোড করার সময় মোট দৈর্ঘ্য অবশ্যই bit-group size-এর পূর্ণ গুণিতক হতে হবে, নইলে টুলটি error রিপোর্ট করবে।
কোডের বদলে কখন এই টুল ব্যবহার করবেন
একবারের কনভার্সন, ক্লাসরুম ডেমো, এবং দ্রুত ফিক্সচার প্রস্তুতের জন্য ব্রাউজার টুলটি ব্যবহার করুন। অ্যাপ্লিকেশন কোডে UTF-8 কনভার্সনের জন্য `TextEncoder` / `TextDecoder`, Node.js-এ `Buffer.from(str, 'utf8')`, বা Python-এ `bytes(str, 'utf-8')` ব্যবহার করুন — এগুলো streaming, error mode, এবং BOM detection হ্যান্ডেল করে, যা একটি স্ট্যাটিক কনভার্টার করে না।