उपयोग कैसे करें
- Base64 स्ट्रिंग या पूरा data URI इनपुट बॉक्स में पेस्ट करें। स्पेस और लाइन ब्रेक से कोई फ़र्क़ नहीं पड़ता।
- पहचाना गया प्रकार और आकार जाँचें। इमेज, PDF, ऑडियो, वीडियो और टेक्स्ट का पूर्वावलोकन दिखाया जाता है।
- फ़ाइल डाउनलोड करें। वह पहचाने गए प्रकार से मेल खाते नाम और एक्सटेंशन के साथ सहेजी जाती है।
फ़ाइल का प्रकार कैसे पहचाना जाता है
Base64 टेक्स्ट में बाइट होते हैं, फ़ाइल का नाम नहीं। जब तक आप MIME टाइप वाला data URI पेस्ट न करें, स्ट्रिंग में ऐसा कुछ नहीं होता जो बताए कि इसमें PDF है, ZIP आर्काइव है या कोई ध्वनि। इसलिए यह टूल डेटा को डिकोड करके शुरुआती कुछ बाइट जाँचता है, यानी फ़ाइल सिग्नेचर या “मैजिक बाइट”, जिन्हें ज़्यादातर फ़ॉर्मैट फ़ाइल की बिल्कुल शुरुआत में रखते हैं। चूँकि ये बाइट तय होते हैं, इसलिए हर फ़ॉर्मैट का Base64 टेक्स्ट भी एक पहचाने जाने लायक तरीक़े से शुरू होता है:
| फ़ॉर्मैट | शुरुआती बाइट | Base64 की शुरुआत |
|---|---|---|
%PDF | JVBER | |
| PNG | 89 50 4E 47 | iVBORw0KGgo |
| JPEG | FF D8 FF | /9j/ |
| GIF | GIF8 | R0lGOD |
| ZIP (DOCX, XLSX, JAR भी) | PK 03 04 | UEsDB |
| ID3 टैग वाला MP3 | ID3 | SUQz |
| WAV, WebP, AVI (RIFF) | RIFF | UklGR |
जब डिकोड की गई फ़ाइल न खुले
Base64 डिकोडिंग में कुछ भी नहीं खोता, इसलिए ख़राब फ़ाइल का मतलब लगभग हमेशा यही होता है कि इनपुट वैसा नहीं था जैसा आप समझ रहे थे। इन कारणों को इसी क्रम में जाँचें:
- कटा हुआ इनपुट। लॉग फ़ाइलें, टर्मिनल, स्प्रेडशीट सेल और चैट ऐप अक्सर लंबी स्ट्रिंग काट देते हैं। अंत का टेक्स्ट गायब होने से फ़ाइल बहुत छोटी रह जाती है, और ज़्यादातर फ़ॉर्मैट फिर खुलते ही नहीं। अगर आपको मूल आकार पता है, तो उसकी तुलना डिकोड के बाद के आकार से करें।
- अतिरिक्त अक्षर। मान के साथ कॉपी हो गए उद्धरण चिह्न, कॉमा या फ़ील्ड का नाम, या JSON स्ट्रिंग से आए
\/और\nजैसे एस्केप सीक्वेंस Base64 का हिस्सा नहीं हैं। केवल मान ही कॉपी करें। - कोई दूसरी एनकोडिंग या वेरिएंट। हेक्स, Base32, Base85 या कस्टम वर्णमाला पहली नज़र में मिलती-जुलती लग सकती हैं, लेकिन Base64 की तरह डिकोड करने पर बेमतलब डेटा बन जाती हैं। एनकोडिंग डिटेक्टर हर डिकोडर आज़माता है और दिखाता है कि कौन-सा फ़िट बैठता है।
- असल में कोई फ़ाइल ही नहीं। अगर परिणाम सादे टेक्स्ट के रूप में पहचाना जाता है, तो स्ट्रिंग किसी टेक्स्ट का Base64 थी: JSON, कोई टोकन या Base64 की एक और परत। उसे Base64 डिकोडर से पढ़ें, और अगर आउटपुट फिर से Base64 हो तो एक बार और डिकोड करें।
Base64 वैलिडेटर अमान्य अक्षरों को उनकी स्थिति के साथ दिखाता है और पैडिंग की समस्याएँ बताता है, जिससे क्षतिग्रस्त हिस्सा ढूँढ़ने में मदद मिलती है।
कोड में Base64 को फ़ाइल में डिकोड करें
# Python
import base64
with open('output.bin', 'wb') as f:
f.write(base64.b64decode(data))
// Node.js
fs.writeFileSync('output.bin', Buffer.from(data, 'base64'));
# Linux
base64 -d input.txt > output.bin
# macOS
base64 -D -i input.txt -o output.bin
# Windows PowerShell
[IO.File]::WriteAllBytes("C:\files\output.bin", [Convert]::FromBase64String((Get-Content input.txt -Raw)))
अक्सर पूछे जाने वाले प्रश्न
किन फ़ाइल प्रकारों को पहचाना जा सकता है?
स्पष्ट सिग्नेचर वाले आम फ़ॉर्मैट: PDF, ZIP, GZIP, 7z और RAR आर्काइव; PNG, JPEG, GIF, WebP और अन्य इमेज; MP3, WAV, OGG, FLAC और M4A ऑडियो; MP4 और WebM वीडियो; WOFF, WOFF2, TTF और OTF फ़ॉन्ट; WebAssembly और भी बहुत कुछ। JSON, XML, HTML और सादा टेक्स्ट भी पहचाने जाते हैं। जिन फ़ॉर्मैट का कोई सिग्नेचर नहीं होता, उन्हें पहचाना नहीं जा सकता, इसलिए अगर आपको असली प्रकार पता है, तो डाउनलोड की गई फ़ाइल का नाम बदल दें।
मेरी Word या Excel फ़ाइल ZIP के रूप में क्यों पहचानी गई?
DOCX, XLSX और PPTX फ़ाइलें, EPUB और JAR की तरह, असल में ZIP आर्काइव होती हैं जिनके अंदर एक ख़ास फ़ोल्डर संरचना होती है, और वे किसी भी ZIP फ़ाइल वाले मैजिक बाइट से ही शुरू होती हैं। डिकोड किए गए बाइट सही हैं: डाउनलोड की गई फ़ाइल का नाम बदलकर .docx, .xlsx या जो भी एक्सटेंशन चाहिए वह कर दें, और वह सामान्य रूप से खुल जाएगी।
क्या data URI पेस्ट किया जा सकता है?
data:...;base64, प्रीफ़िक्स सहित पूरी स्ट्रिंग पेस्ट करें, या केवल Base64 वाला हिस्सा। दोनों ही स्थितियों में प्रकार की जाँच डिकोड किए गए बाइट के आधार पर की जाती है।डिकोड की गई फ़ाइल Base64 टेक्स्ट से छोटी क्यों होती है?
Base64 हर 3 बाइट के लिए 4 अक्षर इस्तेमाल करता है, इसलिए फ़ाइल का आकार टेक्स्ट की लंबाई का लगभग तीन-चौथाई होता है। अगर वह आपकी अपेक्षित फ़ाइल से बहुत छोटी है, तो शायद इनपुट बीच में ही कट गया था।
क्या मेरा डेटा कहीं भेजा जाता है?
नहीं। डिकोडिंग, प्रकार की पहचान और पूर्वावलोकन सब आपके ब्राउज़र में चलते हैं, और डाउनलोड की जाने वाली फ़ाइल आपके डिवाइस पर ही बनती है। कुछ भी अपलोड नहीं होता।