ترميز/فك ترميز Base62 (ثنائي)
معالجة 100% على جانب العميل (لا يوجد رفع إلى الخادم). قم بترميز الملفات/البايتات الثنائية إلى نص Base62 مع أبجديات قابلة للاختيار، ولف الأسطر الاختياري والمعالجة سطرًا بسطر، بالإضافة إلى التحقق الصارم ودعم data: URI عند فك التشفير مرة أخرى إلى بايتات.
الميزات
- رفع/سحب وإفلات الملفات الثنائية (.bin، .dat، الأرشيفات) مع دعم الدُفعات متعددة الملفات
- إجراءان: الترميز (ثنائي → نص Base62) وفك التشفير (نص Base62 → ملف قابل للتنزيل)
- اختيار الأبجدية: 0-9A-Za-z (شائع)، 0-9a-zA-Z، A-Za-z0-9، a-zA-Z0-9
- لف الأسطر الاختياري (وضع الترميز): لف عند عرض عمود محدد أو تعطيل (0)
- اختر فاصل الأسطر: LF ( ) أو CRLF ( ) للإخراج الملفوف
- معالجة سطرًا بسطر للحمولات متعددة السجلات (مفيد عندما يكون كل سطر جزءًا منفصلًا من Base62)
- يمكن لفك التشفير قبَل بادئة data:*;base62, (قابلة للتبديل)
- تبديل التحقق الصارم لرفض الأحرف غير الصالحة للأبجدية المحددة
- وضع المعاينة المباشرة للمدخلات الصغيرة (تعطيل للحمولات الكبيرة)
- معالجة 100% على جانب العميل (لا يوجد رفع إلى الخادم).
كيفية الاستخدام for base62-binary-encoder
إسقاط ملف (أو لصق نص Base62)
للترميز، اسحب وأفلت ملفًا ثنائيًا واحدًا أو أكثر في منطقة الإسقاط. لفك التشفير، الصق نص Base62 الذي تلقّيته (اختياريًا مع بادئة data:*;base62, إذا كانت مفعلة).
اختر الإجراء/الوضع وقم بتشغيله
حدد "الإجراء" (ترميز أو فك تشفير)، ثم انقر على الزر المطابق. للترميز، اختر "الأبجدية" التي تحتاجها وحدد اختياريًا "لف الأسطر عند" وفاصل الأسطر. لفك التشفير، فعّل "التحقق الصارم" لاكتشاف الأحرف غير الصالحة مبكرًا، وبدّل "قبول بادئة data:*;base62," إذا كان إدخالك يتضمنها.
انسخ الإخراج أو حمّل الملف المفكوك تشفيره
بعد الترميز، انسخ إخراج نص Base62 (ملفوف ومفصول كما تم التكوين). بعد فك التشفير، حمّل الملف الثنائي المعاد بناؤه (قواعد اسم الملف عادةً تزيل .b62 عند وجودها وتعود إلى .bin عند الحاجة).
المواصفات الفنية
نموذج التنفيذ
الكشف عن وقت التشغيل، القيود، ومعالجة البيانات.
| الجانب | التفاصيل |
|---|---|
| الوضع | معالجة 100% على جانب العميل (لا يوجد رفع إلى الخادم). |
| نطاق الإجراء | ترميز ثنائي → نص Base62 (أساسي)، بالإضافة إلى فك تشفير Base62 → تنزيل ثنائي |
| المدخلات | التشفير: ملف/كائن ثنائي/Uint8Array/ArrayBuffer/TypedArray. فك التشفير: سلسلة Base62 (اختياريًا data:*;base62، بادئة) |
| المخرجات | التشفير: نص Base62. فك التشفير: البايتات كملف قابل للتنزيل |
| الحدود | ~1–2 ميغابايت من الأحرف؛ ~25000 مللي ثانية مهلة |
| الاحتفاظ بالبيانات | جميع المعالجات تتم محليًا في متصفحك (لا يوجد رفع) |
مثال مصغر
تسلسل بايتات صغير مُشفر باستخدام الأبجدية الشائعة "0-9A-Za-z". يختلف الناتج حسب الأبجدية وإعدادات التغليف.
| العنصر | القيمة |
|---|---|
| بايتات الإدخال (سداسي عشري) | 00 01 02 03 04 05 06 07 08 09 |
| الناتج (Base62) | (يعتمد على التنفيذ/الأبجدية) |
| ما الذي يغير الناتج | ترتيب الأبجدية، التغليف الاختياري، فاصل الأسطر، وما إذا كنت تشفر ككتلة واحدة أو كقطع سطرًا بسطر |
الأخطاء والحالات الحدية
أنماط الفشل الشائعة وكيفية إصلاحها.
| العَرَض | السبب المحتمل | ما يجب التحقق منه |
|---|---|---|
| يجب أن يكون الإدخال سلسلة نصية لفك التشفير | حاولت فك التشفير لكنك قدمت بايتات/ملف بدلاً من نص Base62 | اضبط الإجراء على فك التشفير والصق نص Base62؛ استخدم التشفير للملفات المرفوعة |
| هذه الأداة تشفر البيانات الثنائية... وليس سلسلة نصية | حاولت التشفير بلصق نص في مشفر البيانات الثنائية | ارفع ملفًا (أو مرر البايتات). إذا كنت بحاجة لتحويل النص→بايتات، استخدم أداة موجهة للنص أولاً |
| خطأ تحقق صارم / أحرف غير صالحة | الإدخال يحتوي على أحرف غير موجودة في أبجدية Base62 المحددة (أو يحتوي على فواصل/بادئات) | اختر الأبجدية الصحيحة، عطّل الوضع الصارم لاختبار المدخلات المتساهلة، وأزل المسافات البيضاء الزائدة؛ إذا كان الإدخال يحتوي على data:*;base62، بادئة، فعّل قبول URI البيانات |
| الملف المفكوك يبدو تالفًا | عدم تطابق الأبجدية أو أن المنتج استخدم نوعًا مختلفًا من Base62 | تحقق من ترتيب الأبجدية مع المنتج (0-9A-Za-z مقابل 0-9a-zA-Z إلخ.) واحتفظ به مطابقًا على الجانبين |
| أسطر جديدة غير متوقعة أو حدود قطع | الإدخال/الإخراج مُغلف أو استخدمت المعالجة سطرًا بسطر بشكل غير صحيح | لحمولة واحدة، اضبط تغليف الأسطر على 0 وأبقِ lineByLine معطلاً؛ لتدفقات متعددة التسجيلات، فعّل lineByLine وتأكد من وجود قطعة Base62 واحدة لكل سطر |
| المدخلات كبيرة جدًا (الحد الأقصى 2 ميجابايت) / انتهت المهلة | الحمولة تتجاوز الحدود الآمنة أو الجهاز بطيء | قسّم الحمولة، أو عطّل المعاينة المباشرة، أو انتقل إلى سكريبت/أداة محلية للملفات الكبيرة |
الخيارات وقواعد الإخراج
كيف تؤثر خيارات واجهة المستخدم على سلوك الترميز/فك الترميز.
| الخيار | ينطبق على | التأثير |
|---|---|---|
| الإجراء | ترميز / فك ترميز | يحول الترميز البايتات إلى نص Base62؛ يحول فك الترميز نص Base62 إلى ملف ثنائي قابل للتنزيل. |
| الأبجدية | ترميز / فك ترميز | يحدد ترتيب مجموعة الأحرف الـ 62. يجب أن يتطابق بين الأنظمة لفك الترميز بشكل صحيح. |
| لف الأسطر عند | الترميز فقط | إذا كانت القيمة > 0، يتم إدراج فواصل أسطر عند العرض المختار؛ القيمة 0 تعطيل اللف. |
| فاصل الأسطر | ترميز / فك ترميز (التنسيق) | يتحكم في تسلسل السطر الجديد المستخدم عند اللف أو إخراج النتائج القائمة على الأسطر: LF أو CRLF. |
| المعاينة المباشرة | كليهما | تشغيل تلقائي عند التغييرات (الأفضل للمدخلات الصغيرة). عطّلها للحِمل الكبيرة لتجنب انتهاء المهلة. |
| معالجة سطرًا بسطر | كليهما | يعامل كل سجل كسجل منفصل. مفيد لقوائم/تدفقات أجزاء Base62. |
| قبول بادئة data:*;base62, | فك الترميز فقط | يسمح بمدخلات تبدأ ببادئة تشبه URI البيانات حتى تتمكن الأداة من إزالتها قبل فك الترميز. |
| التحقق الصارم | فك الترميز فقط | يرفض الأحرف خارج الأبجدية المحددة ويمسك بالمدخلات المشوهة مبكرًا. |
بدائل سطر الأوامر
لا يوجد CLI عالمي لـ Base62 في معظم أنظمة التشغيل. للحصول على نتائج قابلة للتكرار في CI أو للملفات الكبيرة، استخدم مكتبة محفوظة ووثّق بوضوح تعيين الأبجدية المستخدمة في نظامك.
جميع المنصات (Python)
ترميز/فك ترميز Base62 باستخدام مكتبة محفوظة (تثبيت الإصدار + الأبجدية)
python -c "import sys; print('Base62 is not in the Python stdlib. Use a maintained Base62 library, pin its version, and explicitly configure the alphabet (e.g., 0-9A-Za-z vs 0-9a-zA-Z).')"لا تتضمن مكتبة Python القياسية Base62. من أجل الدقة والقابلية للتكرار، استخدم مكتبة موثوقة، ثبت إصدار التبعية، وحافظ على ثبات الأبجدية عبر الخدمات.
Node.js
ترميز/فك ترميز Base62 باستخدام مكتبة محفوظة (أبجدية موثقة)
node -e "console.error('Base62 is not built into Node core. Use a reputable Base62 library, pin its version, and document/configure the alphabet (0-9A-Za-z, 0-9a-zA-Z, etc.) to avoid mismatches.')"Node لا يشمل وحدة فك/ترميز Base62 في نواته. يُفضل استخدام مكتبة موثوقة وتوثيق اختيار الأبجدية لضمان استمرارية التوافق في الترميز والفك مع مرور الوقت.
حالات الاستخدام
تضمين الملفات الثنائية في قنوات نصية فقط
- إرفاق ملفات ثنائية صغيرة داخل JSON أو YAML أو أنظمة تعتمد على البيئة وتفضل الحمولات الأبجدية الرقمية
- مشاركة أدوات الاختبار كنص Base62 عندما لا تكون البايتات الخام مناسبة
- تخزين معرفات أو حمولات مضغوطة نسبيًا بدون أبجديات مليئة برموز الترقيم
اختبار التوافق عبر الأبجديات المختلفة
- مقارنة المخرجات عبر ترتيبات الأبجديات المختلفة لفهم قيود التوافق
- شرح الفرق بين Base64 (المُعيار) و Base62 (المتغير)
- توضيح أهمية التحقق الصارم والأبجديات المحددة بوضوح
فحوصات سلامة التكامل المستمر للملفات الصغيرة
- التحقق من أن ناتج Base62 يُفك تشفيره بنجاح إلى بايتات (فحوصات ذهاب وعودة)
- فرض اختيار أبجدية واحدة عبر المستودعات للحفاظ على إمكانية إعادة بناء النتائج
- توحيد الالتفاف/الفواصل للحفاظ على استقرار الاختلافات
تقليل الغموض ومخاطر فك التشفير
- تمكين التحقق الصارم لرفض الأحرف غير المتوقعة مبكرًا
- تجنب نسخ الأسرار إلى أدوات المتصفح؛ استخدام نصوص محلية للبيانات الحساسة
- توثيق وتثبيت اختيارات الأبجدية لمنع التلف العرضي عبر الأنظمة
❓ Frequently Asked Questions
هل هناك واجهة برمجة تطبيقات عامة لهذه الأداة؟
هل المعالجة محلية أم عن بُعد؟
هل يمكنني ترميز الأسرار أو الملفات الحساسة هنا بأمان؟
لماذا يفشل فك التشفير بخطأ تحقق/تحليل؟
لماذا ملفي المفكوك تالف رغم نجاح عملية فك التشفير؟
Pro Tips
عامل Base62 كمتغير قائم على الاختلاف: سجل دائمًا الأبجدية (0-9A-Za-z مقابل 0-9a-zA-Z إلخ.) بجانب الحمولة.
للمخرجات المستقرة، حافظ على تعطيل التفاف الأسطر (wrapLineLength=0) إلا إذا كانت لديك طبقة نقل تتطلب أسطرًا بعرض ثابت.
فعّل التحقق الصارم عند التصحيح: فهو يكتشف المسافات البيضاء الشاردة، والأحرف الخاطئة، وعدم تطابق الأبجدية مبكرًا.
في التكامل المستمر، أضف اختبارًا ذهابًا وإيابًا (ترميز ← فك ترميز) على العينات النموذجية وثبّت إصدار مكتبة Base62 الخاص بك.
Additional Resources
Other Tools
- محسن CSS
- محسن HTML
- محسن Javascript
- محسن PHP
- منتقي الألوان
- مستخرج Sprite
- مُشَفِّر ثنائي Base32
- فَكَّاك Base32
- مُشَفِّر Base32
- مُشَفِّر ثنائي Base58
- فَكَّاك Base58
- مُشَفِّر Base58
- فَكَّاك Base62
- مُشَفِّر Base62
- مُشَفِّر ثنائي Base64
- فك تشفير Base64
- تشفير Base64
- مُشَفِّر ثنائي سداسي عشري
- فَكَّاك سداسي عشري
- مُشَفِّر سداسي عشري
- منسق Csharp
- منسق CSV
- Dockerfile Formatter
- منسق Elm
- منسق ENV
- منسق Go
- منسق Graphql
- منسق Hcl
- منسق INI
- منسق JSON
- منسق Latex
- منسق Markdown
- منسق Objectivec
- Php Formatter
- منسق Proto
- منسق Python
- منسق Ruby
- منسق Rust
- منسق Scala
- منسق سكريبت Shell
- منسق SQL
- منسق SVG
- منسق Swift
- منسق TOML
- Typescript Formatter
- منسق XML
- منسق YAML
- منسق Yarn
- مختصر CSS
- Html Minifier
- Javascript Minifier
- مختصر JSON
- مصغر XML
- عارض رؤوس HTTP
- PDF إلى نص
- مختبر Regex
- مدقق ترتيب SERP
- بحث Whois