Base64 Encoder and Decoder

A free online Base64 encoder and decoder for quick encoding and decoding, with convenient features like UTF-8 support, secure copy, and clear.

এনকোড (টেক্সট → Base64)

ডিকোড (Base64 → টেক্সট)

ব্যবহারের নির্দেশাবলী

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

বৈশিষ্ট্যসমূহ

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

দ্রুত উদাহরণ

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

Base64 কী?

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

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

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

সাধারণ ব্যবহার

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

প্রায়শই জিজ্ঞাসিত প্রশ্ন ও নোটিশ

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

প্রোগ্রামিং ভাষার মাধ্যমে Base64 এনকোডিং ও ডিকোডিং করার উপায়

JavaScript
টেক্সট → Base64 (UTF-8 সেফ)
const encoded = btoa(unescape(encodeURIComponent(text)));
// URL-safe
const urlSafe = encoded.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
ডিকোড (Base64 → টেক্সট)
// প্রিপ্রসেসিং: -_ কে +/ দিয়ে প্রতিস্থাপন করুন
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
এনকোড (টেক্সট → Base64)
$encoded = base64_encode($text);
// URL-safe
$urlSafe = rtrim(strtr($encoded, '+/', '-_'), '=');
ডিকোড (Base64 → টেক্সট)
$b64 = strtr($input, '-_', '+/');
// স্বয়ংক্রিয়ভাবে '=' পূরণ করুন
if (strlen($b64) % 4 !== 0) $b64 .= str_repeat('=', 4 - (strlen($b64) % 4));
$text = base64_decode($b64);
Python
এনকোড (টেক্সট → Base64)
import base64

encoded = base64.b64encode(text.encode('utf-8')).decode('ascii')
# URL-safe এনকোডিং (প্যাডিং সরানো)
url_safe = encoded.replace('+','-').replace('/','_').rstrip('=')
ডিকোড (Base64 → টেক্সট)
import base64

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

enc := base64.StdEncoding.EncodeToString([]byte(text))
// URL-safe এনকোডিং (প্যাডিং ছাড়া)
urlEnc := base64.RawURLEncoding.EncodeToString([]byte(text))
ডিকোড (Base64 → টেক্সট)
import (
    "encoding/base64"
)

decBytes, err := base64.StdEncoding.DecodeString(enc)
// URL-safe ডিকোডিং (প্যাডিং ছাড়া)
decURL, err2 := base64.RawURLEncoding.DecodeString(urlEnc)
Rust
এনকোড (টেক্সট → Base64)
use base64::{engine::general_purpose, Engine as _};

let enc = general_purpose::STANDARD.encode(text.as_bytes());
// URL-safe এনকোডিং (প্যাডিং ছাড়া)
let url_enc = general_purpose::URL_SAFE_NO_PAD.encode(text.as_bytes());
ডিকোড (Base64 → টেক্সট)
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
এনকোড (টেক্সট → Base64)
import java.nio.charset.StandardCharsets;
import java.util.Base64;

String enc = Base64.getEncoder().encodeToString(text.getBytes(StandardCharsets.UTF_8));
// URL-safe এনকোডিং (প্যাডিং ছাড়া)
String urlEnc = Base64.getUrlEncoder().withoutPadding().encodeToString(text.getBytes(StandardCharsets.UTF_8));
ডিকোড (Base64 → টেক্সট)
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 URI হিসাবে এম্বেড করুন:

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

নোট: বড় ফাইলগুলির জন্য Data URI ব্যবহার করবেন না, কারণ এটি HTML/JSON এর আকার উল্লেখযোগ্যভাবে বাড়ায় এবং পারফরম্যান্সকে প্রভাবিত করে।