دیکھ رہے ہیں: اردو انگریزی پر جائیں

Base64 انکوڈر اور ڈیکوڈر

متن کو Base64 میں انکوڈ کریں یا Base64 کو واپس متن میں ڈیکوڈ کریں۔ UTF-8 آگاہ، ASCII سے باہر کے حروف کو سپورٹ کرتا ہے۔

  1. متن یا Base64 سٹرنگ کو باکس میں پیسٹ کریں۔
  2. متن کو Base64 میں تبدیل کرنے کے لیے انکوڈ پر کلک کریں، یا Base64 کو واپس متن میں تبدیل کرنے کے لیے ڈیکوڈ پر کلک کریں۔
  3. اگر ویلیو URL یا JWT میں جاتی ہے تو URL محفوظ پر نشان لگائیں — یہ - اور _ استعمال کرتا ہے اور پیڈنگ چھوڑ دیتا ہے۔
  4. نتیجہ کلپ بورڈ پر رکھنے کے لیے کاپی پر کلک کریں۔
یہ کیا کرتا ہے؟

Base64 صوابدیدی بائٹس کو 64 قابلِ پرنٹ ASCII حروف کے طور پر انکوڈ کرتا ہے، تاکہ بائنری کے لیے غیر محفوظ ٹرانسپورٹس (JSON سٹرنگز، URLs، ای میل باڈیز، ماحولیاتی متغیرات، HTTP Basic auth) انہیں بگاڑے بغیر لے جا سکیں۔ یہ ٹول UTF-8 ان پٹ کو صحیح طریقے سے ہینڈل کرتا ہے — یہ پہلے آپ کی سٹرنگ کو UTF-8 بائٹس میں انکوڈ کرتا ہے، پھر ان بائٹس کو Base64-انکوڈ کرتا ہے، تاکہ غیر ASCII حروف صاف طور پر رائونڈ ٹرپ کریں۔ آؤٹ پٹ ان پٹ سے تقریباً 33% بڑا ہوتا ہے (ہر 3 بائٹ 4 حروف بن جاتے ہیں)۔

مثال

متن "Hello, world!" کو انکوڈ کرنا:

SGVsbG8sIHdvcmxkIQ==

وہی متن URL محفوظ آن کے ساتھ انکوڈ کرنا (پیڈنگ ہٹائی گئی):

SGVsbG8sIHdvcmxkIQ

ایموجی متن "café ☕" کو انکوڈ کرنا:

Y2Fmw6kg4piV

میری Base64 سٹرنگ ڈیکوڈ کیوں نہیں ہو رہی؟

  • Standard اور URL محفوظ کی بے میل۔ - یا _ والی سٹرنگز base64url ہیں، standard Base64 نہیں۔ ملاپ کے لیے URL محفوظ چیک باکس کو ٹوگل کریں۔
  • پیڈنگ غائب ہے۔ ایک standard Base64 سٹرنگ کی لمبائی 4 کی ضربی ہونی چاہیے۔ SGVsbG8 ناکام ہوتا ہے؛ SGVsbG8= کام کرتا ہے۔ = کے ساتھ اس وقت تک پیڈ کریں جب تک لمبائی 4 سے تقسیم ہو جائے۔
  • ویلیو کے اندر وائٹ اسپیس اور نئی لائنیں۔ کچھ سسٹمز Base64 کو \n کے ساتھ 76 حروف پر لپیٹتے ہیں۔ زیادہ تر ڈیکوڈرز اسے برداشت کرتے ہیں، لیکن سخت والے نہیں۔ ڈیکوڈ کرنے سے پہلے وائٹ اسپیس ہٹا دیں۔
  • حادثاتی طور پر دو بار ڈیکوڈ کیا۔ U0dWc2JHOA== کو ڈیکوڈ کرنے سے SGVsbG8 ملتا ہے، جو خود ایک Base64 سٹرنگ ہے۔ اگر آپ کا آؤٹ پٹ مزید Base64 جیسا لگتا ہے، تو اسے دوبارہ ڈیکوڈ کریں۔
  • غیر UTF-8 بائنری ڈیٹا۔ اگر ڈیکوڈ شدہ بائٹس درست UTF-8 نہیں ہیں (مثلاً PNG ہیڈر)، تو متن کے طور پر ڈیکوڈ کرنا ناکام ہوگا یا کوڑا دکھائے گا۔ بائنری کے لیے فائل آگاہ Base64 ٹول استعمال کریں۔
  • سمارٹ کوٹس یا نظر آنے والی ایلپسس۔ ورڈ پروسیسر سے کاپی کرنا " کو گھنگھریالے کوٹس سے بدل سکتا ہے یا لمبی سٹرنگز کو ایلپسس سے کاٹ سکتا ہے۔ پہلے پلین ٹیکسٹ ایڈیٹر کے ذریعے پیسٹ کریں۔
اکثر پوچھے جانے والے سوالات

standard Base64 اور URL محفوظ Base64 میں کیا فرق ہے؟

Standard Base64 (RFC 4648) + اور / استعمال کرتا ہے اور = سے پیڈ کرتا ہے۔ URL محفوظ Base64 (base64url) + کو - سے اور / کو _ سے بدل دیتا ہے اور عام طور پر پیڈنگ چھوڑ دیتا ہے تاکہ سٹرنگ URL پاتھ یا کوئری پیرامیٹر کے طور پر تبدیل ہوئے بغیر زندہ رہے۔ JWTs base64url استعمال کرتے ہیں۔ جب آؤٹ پٹ URL میں جاتا ہے تو URL محفوظ چیک باکس منتخب کریں۔

کیا یہ ٹول ایموجی اور غیر ASCII متن کو صحیح طریقے سے ہینڈل کرتا ہے؟

جی ہاں۔ ان پٹ کو پہلے UTF-8 بائٹس کے طور پر انکوڈ کیا جاتا ہے، پھر ان بائٹس کو Base64-انکوڈ کیا جاتا ہے۔ ڈیکوڈنگ دونوں اقدامات کو الٹ دیتی ہے۔ اسی لیے "café" پیسٹ کر کے نتیجہ ڈیکوڈ کرنے سے آپ کو "café" واپس ملتا ہے، mojibake نہیں۔ بہت سے پرانے Base64 ٹولز Latin-1 فرض کرتے ہیں اور ASCII سے باہر ہر چیز کو خراب کر دیتے ہیں۔

کیا میں امیج یا PDF جیسی بائنری فائل کو انکوڈ کر سکتا ہوں؟

یہ صفحہ صرف متن کو انکوڈ کرتا ہے۔ فائل کو Base64-انکوڈ کرنے کے لیے، اسے ایسے ٹول میں ڈالیں جو اسے بائنری کے طور پر پڑھتا ہے (یا FileReader.readAsDataURL کے ساتھ براؤزر کنسول استعمال کریں)۔ یہ ٹول سٹرنگز انکوڈ کرنے کے لیے ہے — معمول کا استعمال کا کیس جب کریڈینشلز، کنفگ یا JSON فیلڈز ایمبیڈ کرتے ہیں۔

میرا ڈیکوڈ شدہ آؤٹ پٹ کوڑے جیسا کیوں لگتا ہے؟

عام طور پر ان پٹ شروع میں Base64 نہیں تھا، یا یہ URL محفوظ Base64 تھا جسے standard کے طور پر ڈیکوڈ کیا گیا (یا اس کے برعکس)۔ URL محفوظ چیک باکس کو ٹوگل کرنے کی کوشش کریں۔ ایک اور عام وجہ ایسی سٹرنگ کو ڈیکوڈ کرنا ہے جو دراصل Base64 انکوڈ شدہ بائنری ہے، متن نہیں — اس صورت میں بائٹس درست UTF-8 نہیں ہیں۔

کیا = پیڈنگ اہم ہے؟

Standard Base64 آؤٹ پٹ کو پیڈ کرتا ہے تاکہ اس کی لمبائی 4 کی ضربی ہو۔ زیادہ تر ڈیکوڈرز پیڈنگ کے بغیر ان پٹ قبول کرتے ہیں، لیکن کچھ سخت والے اسے مسترد کرتے ہیں۔ URL محفوظ Base64 عام طور پر پیڈنگ چھوڑ دیتا ہے۔ اگر ڈیکوڈر شکایت کرے، تو = نشانات شامل کریں یہاں تک کہ لمبائی 4 سے تقسیم ہو جائے، یا ان سب کو ہٹا کر دوبارہ کوشش کریں۔

کیا آپ وہ متن محفوظ کرتے ہیں جو میں انکوڈ یا ڈیکوڈ کرتا ہوں؟

نہیں۔ ہم یہاں پیسٹ کیا گیا کوئی متن محفوظ نہیں کرتے۔ صفحہ بند یا ریفریش کرتے ہی آپ کا ان پٹ ضائع ہو جاتا ہے — کچھ بھی نہیں رکھا جاتا، اور اس بات کا کوئی ریکارڈ نہیں کہ آپ نے کیا انکوڈ یا ڈیکوڈ کیا۔ اگر آپ اعتماد کی اضافی تہہ چاہتے ہیں تو اپنے براؤزر کے developer tools چیک کر سکتے ہیں۔