বেস64 এনকোডার/ডিকোডার

দ্রুত এনকোডিং ও ডিকোডিংয়ের জন্য একটি বিনামূল্যের অনলাইন বেজ64 এনকোডার/ডিকোডার, যার বৈশিষ্ট্য হলো ইউটিএফ-৮ সুরক্ষিত হ্যান্ডলিং, ইউআরএল-সুরক্ষিত রূপান্তর, স্বয়ংক্রিয় প্যাডিং, রিয়েল-টাইম পরিসংখ্যান ও সুরক্ষিত কপি ফাংশন। বহুভাষিক কোড উদাহরণ, ডেটা ইউআরআই জেনারেশন, বিস্তারিত ব্যবহার গাইড এবং প্রায়শই জিজ্ঞাসিত প্রশ্ন প্রদান করে। দ্বিমুখী ইনপুট ফিলিং, কীবোর্ড অ্যাক্সেসযোগ্যতা ও মোবাইল-সহায়ক ডিজাইনসহ ব্যবহারকারী-বান্ধব ইন্টারফেস। কোনো ডাউনলোডের প্রয়োজন নেই, সরাসরি আপনার ব্রাউজারে কাজ করে।

এনকোড (টেক্সট → বেজ64)

ডিকোড (বেজ64 → টেক্সট)

কীভাবে ব্যবহার করবেন

বাইনারি ডেটাকে Base64 দিয়ে ASCII তে এনকোড করা হয় সুরক্ষিত ট্রান্সমিশন ও স্টোরেজের জন্য। আকার প্রায় ৩৩% বাড়ানো হয়।
এনকোড: সাধারণ টেক্সটকে Base64 তে রূপান্তর করুন সুরক্ষিত ট্রান্সমিশনের জন্য।
ডিকোড: Base64 স্ট্রিং থেকে মূল টেক্সট পুনরুদ্ধার করুন।

বৈশিষ্ট্য

  • UTF-8 নিরাপদ: অ-ASCII অক্ষর সঠিকভাবে পরিচালনা করে (encodeURIComponent/unescape দিয়ে মোড়ানো)।
  • URL-নিরাপদ সমর্থন: এক ক্লিকে + / → - _ মোড স্যুইচ করুন, প্যাডিং = সরানোর বিকল্প।
  • ডিকোডের আগে প্রি-প্রসেস: স্পেস বাদ দিন, URL-নিরাপদে স্বয়ংক্রিয় রূপান্তর করুন এবং স্বয়ংক্রিয়ভাবে = প্যাড করুন।
  • রিয়েল-টাইম ইন্টারঅ্যাকশন: ইনপুট তাৎক্ষণিকভাবে প্রসেস করা হয়, দৈর্ঘ্য ও বৃদ্ধির হারের পরিসংখ্যান দেখানো হয়।
  • ব্যবহারযোগ্যতা: দ্রুত কপি করুন, ইনপুটের মধ্যে দ্বিমুখী ফিল, কীবোর্ড-অ্যাক্সেসযোগ্য, মোবাইল-বান্ধব।
  • সামঞ্জস্যপূর্ণ থিম: Tailwind dark: ক্লাস নেই — DaisyUI থিম দিয়ে সম্পূর্ণভাবে স্টাইল করা।

দ্রুত উদাহরণ

মূল টেক্সট:
Hello, World!
Base64:
SGVsbG8sIFdvcmxkIQ==

বেজ64 কী?

Base64 হলো বাইনারি ডেটাকে ASCII টেক্সটে এনকোড করার একটি পদ্ধতি, সাধারণত JSON, XML এবং HTTP এর মতো টেক্সট-ভিত্তিক প্রোটোকলের মাধ্যমে ইমেজ বা ফাইলের বিষয়বস্তু ট্রান্সমিট করার জন্য ব্যবহৃত হয়।

এটি প্রতি 3 বাইটকে 4 প্রিন্টযোগ্য অক্ষরে ম্যাপ করে, যার ফলে সাধারণত আকার প্রায় 33% বৃদ্ধি পায়।

স্ট্যান্ডার্ড Base64 A–Z, a–z, 0–9, +, / এবং প্যাডিং অক্ষর = ব্যবহার করে; URL-নিরাপদ সংস্করণ + ও / কে - ও _ দিয়ে প্রতিস্থাপন করে URL এ এসকেপ ইস্যু এড়াতে।

সাধারণ ব্যবহারের ক্ষেত্রসমূহ

  • Data URI হিসেবে ইমেজ বা ছোট ফাইল এম্বেড করুন।
  • ক্লায়েন্ট ও সার্ভারের মধ্যে বাইনারি ডেটা ট্রান্সফার করুন (যেমন এনক্রিপ্ট করা সাইফারটেক্সট, কম্প্রেসড স্ট্রিম)।
  • এনকোডিং অসঙ্গতি বা অদৃশ্য অক্ষর এড়াতে টেক্সটকে প্রিন্টযোগ্য ফরম্যাটে রূপান্তর করুন।

প্রায়শই জিজ্ঞাসিত প্রশ্ন ও গুরুত্বপূর্ণ নোট

  • ক্যারাক্টার সেট: ওয়েব পরিবেশে প্রথমে UTF-8 হিসেবে টেক্সট এনকোড করুন (এই টুলটি এই ধাপটি স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত করে)।
  • URL-নিরাপদ: URL প্যারামিটার বা পাথের জন্য, URL-নিরাপদ সংস্করণ বেছে নিন এবং প্যাডিং অক্ষরগুলো সরানোর কথা বিবেচনা করুন।
  • প্যাডিং: কিছু ইমপ্লিমেন্টেশন = বাদ দেওয়ার অনুমতি দেয়; ডিকোড করার সময় স্বয়ংক্রিয়ভাবে 4 অক্ষরের গুণিতকে প্যাড করুন।
  • লাইন ব্রেক: MIME Base64 এ লাইন ব্রেক থাকতে পারে; ডিকোড করার সময় সেগুলো পরিচালনা করার জন্য "স্পেস উপেক্ষা করুন" সিলেক্ট করুন।

প্রোগ্রামিং ভাষায় বেজ64 কীভাবে এনকোড/ডিকোড করবেন

JavaScript
টেক্সট → বেস64 (ইউটিএফ-৮ সুরক্ষিত)
const encoded = btoa(unescape(encodeURIComponent(text)));
// ইউআরএল-সুরক্ষিত
const urlSafe = encoded.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
ডিকোড করুন (বেস64 → টেক্সট)
// প্রিপ্রসেস: -_ কে +/ দিয়ে প্রতিস্থাপন করুন
let b64 = input.replace(/-/g, '+').replace(/_/g, '/');
if (b64.length % 4 !== 0) b64 = b64.padEnd(b64.length + (4 - (b64.length % 4)), '=');
const text = decodeURIComponent(escape(atob(b64)));
PHP
এনকোড করুন (টেক্সট → বেস64)
$encoded = base64_encode($text);
// ইউআরএল-সুরক্ষিত
$urlSafe = rtrim(strtr($encoded, '+/', '-_'), '=');
ডিকোড করুন (বেস64 → টেক্সট)
$b64 = strtr($input, '-_', '+/');
// '=' দিয়ে স্বয়ংক্রিয়ভাবে প্যাড করুন
if (strlen($b64) % 4 !== 0) $b64 .= str_repeat('=', 4 - (strlen($b64) % 4));
$text = base64_decode($b64);
Python
এনকোড করুন (টেক্সট → বেস64)
import base64

encoded = base64.b64encode(text.encode('utf-8')).decode('ascii')
# ইউআরএল-সুরক্ষিত এনকোড করুন (প্যাডিং সরান)
url_safe = encoded.replace('+','-').replace('/','_').rstrip('=')
ডিকোড করুন (বেস64 → টেক্সট)
import base64

def b64_decode(s: str) -> str:
    s = s.replace('-','+').replace('_','/')
    s += '=' * (-len(s) % 4)  # '=' দিয়ে স্বয়ংক্রিয়ভাবে প্যাড করুন
    return base64.b64decode(s).decode('utf-8')
Go
এনকোড করুন (টেক্সট → বেস64)
import (
    "encoding/base64"
)

enc := base64.StdEncoding.EncodeToString([]byte(text))
// ইউআরএল-সুরক্ষিত এনকোড করুন (প্যাডিং নেই)
urlEnc := base64.RawURLEncoding.EncodeToString([]byte(text))
ডিকোড করুন (বেস64 → টেক্সট)
import (
    "encoding/base64"
)

decBytes, err := base64.StdEncoding.DecodeString(enc)
// ইউআরএল-সুরক্ষিত ডিকোড করুন (প্যাডিং নেই)
decURL, err2 := base64.RawURLEncoding.DecodeString(urlEnc)
Rust
এনকোড করুন (টেক্সট → বেস64)
use base64::{engine::general_purpose, Engine as _};

let enc = general_purpose::STANDARD.encode(text.as_bytes());
// ইউআরএল-সুরক্ষিত এনকোড করুন (প্যাডিং নেই)
let url_enc = general_purpose::URL_SAFE_NO_PAD.encode(text.as_bytes());
ডিকোড করুন (বেস64 → টেক্সট)
use base64::{engine::general_purpose, Engine as _};

let dec_bytes = general_purpose::STANDARD.decode(&enc).unwrap();
let dec = String::from_utf8(dec_bytes).unwrap();

let url_dec = String::from_utf8(
    general_purpose::URL_SAFE_NO_PAD.decode(&url_enc).unwrap()
).unwrap();
কার্গো ডিপেন্ডেন্সি: base64 = "0.22"
Java
এনকোড করুন (টেক্সট → বেস64)
import java.nio.charset.StandardCharsets;
import java.util.Base64;

String enc = Base64.getEncoder().encodeToString(text.getBytes(StandardCharsets.UTF_8));
// ইউআরএল-সুরক্ষিত এনকোড করুন (প্যাডিং নেই)
String urlEnc = Base64.getUrlEncoder().withoutPadding().encodeToString(text.getBytes(StandardCharsets.UTF_8));
ডিকোড করুন (বেস64 → টেক্সট)
import java.nio.charset.StandardCharsets;
import java.util.Base64;

String dec = new String(Base64.getDecoder().decode(enc), StandardCharsets.UTF_8);
String urlDec = new String(Base64.getUrlDecoder().decode(urlEnc), StandardCharsets.UTF_8);

ডেটা ইউআরআই উদাহরণ

Data URI হিসেবে ইমেজ বা ছোট ফাইল এম্বেড করুন:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...

দ্রষ্টব্য: বড় ফাইলের জন্য ডেটা ইউআরআই ব্যবহার করা থেকে বিরত থাকুন, কারণ এগুলি এইচটিএমএল/জেএসনের আকার উল্লেখযোগ্যভাবে বাড়ায় এবং কর্মক্ষমতা হ্রাস করে।