Tüm Kodlamalar Tek Seferde

Metni bir kez yazın veya yapıştırın; ikili, hex, Base32 ailesi, Base58, Base64, Base85 ailesi, Base91 ve diğer kodlamalardaki karşılığını yan yana görün. Her sonucun kendi Kopyala düğmesi vardır.

Tamamen tarayıcınızda çalışır. Hiçbir veri yüklenmez.

Nasıl kullanılır

  1. Metni girdi alanına yazın veya yapıştırın.
  2. Siz yazdıkça tüm kodlamalar güncellenir: ikili, sekizlik, ondalık, onaltılık, Base32 varyantları, Base36'dan Base91'e kadar olanlar, uuencode ve xxencode.
  3. Hangisinin en kısa olduğunu veya yalnızca kabul edebileceğiniz karakterleri kullandığını görmek için çıktıları karşılaştırın.
  4. İhtiyacınız olan sonucun yanındaki "Kopyala" düğmesine tıklayın.

Tek girdiden tüm kodlamalar

Bu sayfadaki her kodlama, aynı baytları farklı bir karakter dizisine dönüştürür. Bunları yan yana görmek; bir proje için kodlama seçmenin, bir günlük veya yapılandırma dosyasında karşılaştığınız bir dizeyi tanımanın ya da biçimlerin birbirinden nasıl ayrıldığını öğrenmenin en hızlı yoludur. Metniniz UTF-8 baytları olarak kodlanır; bu nedenle ş veya ü gibi aksanlı bir harf iki bayt, bir Çince karakter ise üç bayt sayılır. Her şey tarayıcınızda çalışır.

  • Bayt başına sayılar. İkili, sekizlik ve ondalık gösterim her baytı ayrı ayrı yazar. Okuması kolaydır, ancak uzundur.
  • Bit grupları. Hex, Base32 (Base32hex, Crockford ve z-base-32 ile birlikte), Base64 ve Base64URL her karaktere sabit sayıda bit atar; bu nedenle çıktı uzunluğu yalnızca girdi uzunluğuna bağlıdır.
  • Büyük sayılar. Base36, Base58 ve Base62 girdinin tamamını tek bir büyük tam sayı olarak ele alır. Uzunluk, değere göre bir karakter kadar değişebilir; baştaki sıfır baytlar baştaki karakterler olarak korunur.
  • Bloklar. Base45 2 baytı 3 karaktere, Ascii85, Z85 ve Base85 ise 4 baytı 5 karaktere dönüştürür; Base91 her karakter çiftine 13 veya 14 bit sığdırır.
  • Satırlar. uuencode ve xxencode, veriyi her biri bir uzunluk karakteriyle başlayan satırlar hâlinde yazan eski e-posta ve Usenet biçimleridir.

Çıktı boyutlarının karşılaştırması

Her kodlamanın girdi baytı başına kaç karakter gerektirdiği ve SHA-256 hash değeri veya Ed25519 açık anahtarı gibi 32 baytlık bir değerin kaç karaktere dönüştüğü:

KodlamaBayt başına karakter32 baytın karşılığı
Base16 (onaltılık)2,064
Base321,656 (dolgusuz 52)
Base36yaklaşık 1,5549 veya 50
Base451,548
Base58yaklaşık 1,3743 veya 44
Base62yaklaşık 1,3442 veya 43
Base64yaklaşık 1,3344 (dolgusuz 43)
Base851,2540
Base91yaklaşık 1,2339 veya 40

Hex'ten Base64'e geçmek uzunluğu üçte bir kısaltır. Bir adım daha ileri gidip Base64'ten Base91'e geçmek ise yalnızca yaklaşık %8 daha kazandırır.

Hangi kodlamayı seçmeli

En kısa çıktı her zaman en iyisi değildir. Ascii85 tırnak işaretleri ve ters eğik çizgiler, Base91 ise çift tırnak içerebilir; bu nedenle her ikisi de JSON, HTML veya kabuk komutlarında kaçış gerektirebilir. Dizenin nerede kullanılacağını düşünün:

  • URL'ler ve dosya adları: Base64URL, Base58 veya Base62.
  • Sesli okuma veya elle yazma: Birbirine benzeyen karakterleri dışarıda bırakan Crockford Base32 veya Base58.
  • Büyük/küçük harf duyarsız sistemler: hex, Base32 veya Base36.
  • QR kodları: Yalnızca QR alfanümerik modunun karakterlerini kullanan Base45.
  • PDF, Git veya ZeroMQ'da kompakt metin: Ascii85, Base85 veya Z85.
  • En yüksek uyumluluk: Neredeyse tüm programlama dilleri ve platformlar tarafından desteklenen Base64.

Sıkça sorulan sorular

Hangi kodlama en kısa çıktıyı verir?

Bu sayfadaki kodlamalar arasında en kompakt olanı, bayt başına yaklaşık 1,23 karakterle Base91'dir; onu bayt başına 1,25 karakterle Ascii85, Z85 ve Base85 izler. Base64 yaklaşık 1,33 karakter gerektirir, ancak çok daha yaygın olarak desteklenir; genellikle varsayılan tercih olmasının nedeni de budur.

Aynı boyuttaki girdilerde Base58 ve Base62 sonuçlarının uzunluğu neden değişiyor?

Bu kodlamalar girdinin tamamını tek bir büyük sayı olarak dönüştürür; bu nedenle uzunluk yalnızca boyuta değil, sayının değerine de bağlıdır. Baştaki her sıfır bayt da sonucun başına bir karakter ekler. Hex, Base32 ve Base64 ise aynı sayıda bayt için her zaman aynı uzunluğu verir.

Bu sayfada bir dizenin kodunu çözebilir miyim?
Bu sayfa yalnızca kodlama yapar. Bilinmeyen bir dizenin ne olduğunu öğrenmek için onu kodlama algılayıcıya yapıştırın. Bir dizeyi bir kodlamadan diğerine dönüştürmek için kodlama dönüştürücüyü kullanın.
İkili çıktı neden bu kadar uzun?

İkili gösterim her bayt için 8 basamak ve ayrıca ayırıcılar yazar; bu nedenle hex'ten en az dört kat daha uzundur. Veriyi saklamak veya göndermek için değil, tek tek bitleri incelemek için tasarlanmıştır.

Metnim bir sunucuya gönderiliyor mu?

Hayır. Tüm kodlamalar tarayıcınızda JavaScript ile hesaplanır ve metin cihazınızdan hiç çıkmaz.