Sprytne Okazje — promocje, kody rabatowe i wyprzedaże

Konwerter HEX na tekst

Przelicz ciąg znaków hex (szesnastkowy) na tekst ASCII/UTF-8 i z powrotem. Obsługa znaków specjalnych, null bytes i kodowania. Bezpłatnie, działa lokalnie.

Bezpieczne (SSL)
Przetwarzanie Lokalne
100% Darmowe
Instrukcja
  • 1
    Wprowadź dane
    Wpisz treść, wklej tekst lub załaduj plik z dysku.
  • 2
    Kliknij przycisk
    Narzędzie natychmiast przetworzy Twoje dane w przeglądarce.
  • 3
    Pobierz wynik
    Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
function runTool() {
  return "Wynik gotowy w 0.1s";
}
44 znaków
Hello, Toolsti!

Znaków w wyniku

15 szt.
OK

Polskie znaki liczą się jako jeden

Bajty

15 B

2 cyfry HEX = 1 bajt

Błędy parsowania

0 szt.
OK

Spacje, przecinki i 0x są pomijane

Cyfr HEX

30 szt.

Zawsze parzysta liczba na pełne bajty

Kodowanie

UTF-8

Wybrane w ustawieniach

Znak Kod (DEC) BIN (bajty) HEX (bajty) Opis
A 65 01000001 41 wielka litera A — 1 bajt
a 97 01100001 61 mała litera a — 1 bajt
0 48 00110000 30 cyfra zero — 1 bajt
␣ 32 00100000 20 spacja — też ma swój kod
k 107 01101011 6b mała litera k — 1 bajt
j 106 01101010 6a mała litera j — 1 bajt
ą 261 11000100 10000101 c4 85 a z ogonkiem — 2 bajty UTF-8
ł 322 11000101 10000010 c5 82 l z kreską — 2 bajty UTF-8
ż 380 11000101 10111100 c5 bc z z kropką — 2 bajty UTF-8
€ 8 364 11100010 10000010 10101100 e2 82 ac euro — 3 bajty UTF-8

Sprawdź: wpisz „6b616a” — wyjdzie „kaj”, bo k = 6b, a = 61, j = 6a. Przykład z ustawień domyślnych: „48 65 6C 6C 6F 2C 20 54 6F 6F 6C 73 74 69 21” to „Hello, Toolsti!”, a „c4 85” to jeden znak „ą” (2 bajty UTF-8). Ten sam bajt dziesiętnie: 6b = 107.

Warto wiedzieć — HEX na tekst w praktyce

Które kodowanie wybrać

UTF-8 to domyślny wybór: obsługuje polskie znaki i emoji (jeden znak = 1–4 bajty). ASCII zamieni znaki spoza zakresu na „?” (przydatne do czyszczenia danych), a Latin-1 mapuje bajty 1:1 na znaki ISO-8859-1 — rozszyfruje stare pliki i komunikaty z systemów, w których 1 bajt = 1 znak.

Tryb escaped i bajty zerowe

Tryb escaped zapisuje znaki niedrukowalne jako \n, \t i \xNN — dzięki temu widzisz znaki kontrolne zamiast niewidocznych bajtów (np. null-terminatory z C). Opcja „usuń bajty zerowe” czyści zera wiodące, które psują porównania stringów w debugowanych danych.

Najczęstsze błędy parsowania

Obce znaki (np. „g”–„z” bez prefiksu 0x) i nieparzysta liczba cyfr to niepełny bajt. W trybie ścisłym narzędzie zgłasza błąd, w zwykłym — pomija śmieci, a nieparzystą długość dopełnia wiodącym 0 (kafelek „Błędy parsowania” pokazuje wtedy status „Uwaga”). Dane wejściowe nigdy nie wywalają konwersji wyjątkiem.

Do czego to się przydaje

Odczytywanie zawartości zrzutów HEX z edytorów binarnych, payloadów API i webhooków, ciasteczek oraz wartości zakodowanych w URL-ach, identyfikacja BOM-a pliku (ef bb bf), magicznych bajtów formatów (PDF zaczyna się od 25 50 44 46 = „%PDF”) i sprawdzanie, co naprawdę siedzi w „dziwnym” stringu.

Wskazówka: wynik przelicza się na żywo przy pisaniu, a „Pobierz .txt” zapisuje konwersję z informacją o kodowaniu i znormalizowanym HEX. To narzędzie należy do rodziny konwerterów binarno-tekstowych — te same bajty dziesiętnie i binarnie policzą „Tekst na ASCII” i „Tekst na dane binarne”.

Oceń to narzędzie:

Powiązane narzędzia

Inne narzędzia, które mogą Ci się przydać

Konwerter HEX ↔ tekst – ASCII, UTF-8 i bajty szesnastkowe

Hex (szesnastkowy) to reprezentacja danych binarnych jako ciągu cyfr 0-9 i liter A-F. Każdy bajt to 2 cyfry hex (FF = 255 = 11111111 w binary). Narzędzie konwertuje tekst na hex i z powrotem – przydatne w debugging protokołów, analizie binarnych danych i nauce enkodowania.

konwerter hex na tekst tekst do hex ASCII hex konwerter hex string decoder

Jak działa konwersja tekst → hex

Każdy znak ma kod ASCII/Unicode. Przykład: "A" = ASCII 65 = 0x41. "Hello" → 48 65 6C 6C 6F. UTF-8 (polskie znaki): "ą" (U+0105) → C4 85 (2 bajty). Separatory: space (48 65 6C), brak (48656C), prefiks 0x (0x48 0x65).

Formaty wyjścia

Hex bez separatora: 48656c6c6f. Hex ze spacją: 48 65 6c 6c 6f. Hex z 0x prefix: 0x48 0x65. Hex uppercase: 48656C6C6F. C array: {0x48, 0x65, 0x6C, 0x6C, 0x6F}. Python bytes literal: b"\x48\x65\x6c\x6c\x6f". Jak chcesz: narzędzie obsługuje wszystkie formaty.

Przypadki użycia w programowaniu

Debug protokołów sieciowych (Wireshark, tcpdump): odczytywanie surowych bajtów pakietu. Analiza plików binarnych: magic bytes (PDF: 25 50 44 46, PNG: 89 50 4E 47). Kryptografia: klucze i hashe w hex. Protokoły IoT (MQTT, Modbus): polecenia jako hex strings. SQLi: 0x41414141 zamiast AAAA.

Enkodowania – ASCII vs UTF-8 vs Latin-1

ASCII: 128 znaków (0-127), 1 bajt na znak. Latin-1 (ISO-8859-1): 256 znaków, 1 bajt (polskie znaki w Windows-1250). UTF-8: zmienna długość (1-4 bajty), kompatybilny z ASCII dla 0-127. "ą" UTF-8: C4 85 (2 bajty). "ą" Latin-2: B1 (1 bajt). Wybierz kodowanie w narzędziu.

Jak przebiega dekodowanie HEX na tekst krok po kroku

Konwersja HEX na tekst to operacja odwrotna do zapisywania znaków jako bajtów. Narzędzie najpierw normalizuje wejście: usuwa separatory, spacje, przecinki, prefiksy 0x oraz znaki uznane za ozdobne, a litery a-f zamienia na A-F. Następnie scala cały ciąg w pary. Każda para to jeden bajt, czyli wartość od 0 do 255. Przykładowo C4 to 196, a 85 to 133. Dopiero potem dekoder odczytuje te bajty zgodnie z wybranym kodowaniem.

Przy ASCII każdy bajt z zakresu 00-7F odpowiada jednemu znakowi. Przy UTF-8 bajty są analizowane jako sekwencje. Pierwszy bajt mówi, ile bajtów liczy znak: 0xxxxxxx to jeden bajt, 110xxxxx to początek znaku dwubajtowego, 1110xxxx to początek znaku trzybajtowego. Kolejne bajty muszą mieć prefiks 10xxxxxx. Wartość Unicode oblicza się przez złożenie bitów z tych bajtów. Dlatego C4 85 daje U+0105, czyli ą, a nie dwa osobne znaki.

Przy Latin-1 i Latin-2 każdy bajt mapuje na jeden znak z tabeli 256 pozycji. Ten sam bajt, na przykład B1, może oznaczać inny znak w zależności od kodowania. Jeśli sekwencja jest niepełna albo kod nie pasuje, narzędzie zwraca błąd, znak zastępczy lub pomija uszkodzony fragment. Po odfiltrowaniu separatorów wejście powinno mieć parzystą liczbę cyfr szesnastkowych.

Przykład: dekodowanie ciągu C4 85 20 41 42

  1. Odfiltruj separatory. Wejście C4 85 20 41 42 zamieniamy na ciąg C485204142, a następnie dzielimy go na pary: C4, 85, 20, 41, 42.
  2. Zamień każdą parę na wartość dziesiętną. C4 to 12 razy 16 plus 4, czyli 196. 85 to 8 razy 16 plus 5, czyli 133. 20 to 2 razy 16 plus 0, czyli 32. 41 to 4 razy 16 plus 1, czyli 65. 42 to 4 razy 16 plus 2, czyli 66.
  3. Wybierz UTF-8. Bajt C4 ma binarnie 1100 0100, więc rozpoczyna dwubajtową sekwencję UTF-8. Bajt 85 ma binarnie 1000 0101 i jest bajtem kontynuacyjnym.
  4. Oblicz kod punktu Unicode. Z C4 bierzemy pięć bitów po prefiksie: 00100, czyli 4. Z 85 bierzemy sześć bitów: 000101, czyli 5. Następnie wykonujemy działanie 4 przesunięte o 6 bitów w lewo plus 5. Daje to 256 plus 5, czyli 261. W Unicode 261 dziesiętnie to U+0105, czyli ą.
  5. Pozostałe bajty dekodujemy pojedynczo: 20 to 32, czyli spacja, 41 to 65, czyli A, a 42 to 66, czyli B.
  6. Wynik dla UTF-8 to ą AB. Gdyby wybrać Latin-2, C4 i 85 byłyby osobnymi znakami, a nie literą ą. To pokazuje, że kodowanie trzeba wybrać przed odczytem tekstu.

Szybka tabela referencyjna: HEX, tekst i typ danych

Bajty HEXWynik dla wybranego kodowaniaUwagi
41AASCII dla 65 dziesiętnie; jeden bajt, jeden znak.
48 65 6C 6C 6FHelloKlasyczny ciąg testowy; wszystkie bajty mieszczą się w zakresie ASCII.
20spacjaWartość 32 dziesiętnie; często mylona z brakiem znaku.
C4 85ąUTF-8 dla U+0105; dwa bajty na jeden znak.
B1ąLatin-2; ten sam znak może zajmować jeden bajt, ale tylko w tym kodowaniu.
25 50 44 46%PDFMagic bytes PDF; czytelne jako tekst, ale to nagłówek pliku.
4D 5AMZPoczątek pliku EXE w Windows; dowód, że HEX nie zawsze oznacza zwykły tekst.

Praktyczne wskazówki przy konwersji HEX na tekst

  • Ustal kodowanie przed konwersją – te same bajty mogą dać inny tekst w ASCII, Latin-2 i UTF-8. Jeśli HEX pochodzi z nowoczesnego systemu lub sieci, najczęściej właściwy będzie UTF-8.
  • Normalizuj separatory – usuń spacje, przecinki, prefiksy 0x i backslash x, ale rób to świadomie. Czasem separator jest częścią formatu danych, a nie ozdobnikiem.
  • Sprawdź długość ciągu – po odfiltrowaniu separatorów liczba cyfr powinna być parzysta. Nieparzysta długość oznacza brakujący półbajt albo błąd kopiowania.
  • Patrz na zakresy bajtów – wartości 00-7F są zwykle zgodne z ASCII, natomiast bajty 80-FF zależą od kodowania. Sekwencje zaczynające się od C2-DF, E0-EF lub F0-F4 często sygnalizują UTF-8.
  • Nie traktuj każdego HEX jako tekstu – obrazy, archiwa i pliki binarne mogą po konwersji wyglądać jak przypadkowe znaki. Do takich danych używaj podglądu hex, a nie tylko dekodowania na tekst.

Ograniczenia konwertera HEX na tekst

  • Brak automatycznej detekcji kodowania – narzędzie nie wie, skąd pochodzi HEX. Przy złym wyborze polskie znaki mogą wyświetlić się jako mojibake, mimo że same bajty są poprawne.
  • Nie naprawia uszkodzonych danych – nieparzysta liczba cyfr, obce znaki lub urwana sekwencja UTF-8 powodują błąd albo znak zastępczy. Konwerter nie odtworzy brakującego bajtu.
  • Nie interpretuje struktur binarnych – nie odróżnia nagłówka pliku, liczby całkowitej, wartości zmiennoprzecinkowej ani pola protokołu. To tylko mapowanie bajtów na znaki.
  • Nie zastąpi analizatora danych – do debugowania pakietów, kryptografii czy plików binarnych potrzebny jest kontekst: offset, endianness, typ pola i dokumentacja formatu.

Najczęstsze pytania

Jakie są magic bytes popularnych formatów plików?

PDF: 25 50 44 46 (%PDF). PNG: 89 50 4E 47 0D 0A 1A 0A. JPEG: FF D8 FF. ZIP: 50 4B 03 04 (PK). EXE (Windows): 4D 5A (MZ). Przez magic bytes można zidentyfikować typ pliku niezależnie od rozszerzenia (file command w Linux, HxD Hex Editor).

Jak odczytać hex z wiersza poleceń?

xxd file.bin: hex dump pliku. hexdump -C file.bin: hex + ASCII obok. Python: open("f","rb").read().hex(). Node.js: Buffer.from("text").toString("hex"). Narzędzie online zastępuje te komendy dla pojedynczych konwersji.

Co to jest hex encoding vs Base64?

Hex: 2 znaki na bajt → rozmiar ×2. Czytelny, ale nieefektywny. Base64: ~1.33 znaki na bajt → rozmiar ×1.33. Mniej czytelny. Użycie: hex – debugging i protokoły niskiego poziomu; Base64 – przesyłanie danych binarnych w HTTP, email (MIME).

Jak konwertować hex w JavaScript?

Tekst → hex: Array.from(str).map(c => c.charCodeAt(0).toString(16).padStart(2,"0")).join(" "). Hex → tekst: hexStr.match(/.{2}/g).map(h => String.fromCharCode(parseInt(h,16))).join(""). Dla UTF-8: użyj TextEncoder/TextDecoder zamiast charCodeAt (obsługuje multi-byte).

Czy narzędzie obsługuje null bytes i dane binarne?

Tak – hex może zawierać 00 (null byte). Wyświetlanie: null bajty pokazane jako 00, ale konwersja na tekst zamienia je na znak U+0000. Dla danych binarnych z null: użyj trybu "binary display" zamiast próbować renderować jako tekst. Przeglądarka może obciąć string przy null.

Jak zamienić HEX na tekst online?

Wklej ciąg szesnastkowy do pola wejściowego, wybierz kodowanie, na przykład UTF-8, i odczytaj wynik. Narzędzie samo usunie typowe separatory i zamieni pary cyfr na znaki.

Dlaczego po konwersji HEX na tekst wychodzą krzaki?

Najczęściej powód to złe kodowanie albo dane, które nie są tekstem. Te same bajty mogą być poprawne w Latin-2, a błędne w UTF-8. Jeśli HEX pochodzi z pliku binarnego, wynik może wyglądać losowo.

Czy konwerter HEX na tekst obsługuje polskie znaki?

Tak, jeśli wybierzesz właściwe kodowanie. Litera ą w UTF-8 to C4 85, a w Latin-2 to B1. Bez zgodności kodowania zobaczysz inny znak lub znak zastępczy.

Jak rozpoznać, czy HEX to ASCII, czy UTF-8?

Sprawdź zakresy bajtów. ASCII mieści się w 00-7F. UTF-8 używa bajtów 80-FF w określonych sekwencjach, na przykład C4 85 dla ą. Jeśli bajty wysokie nie tworzą poprawnej sekwencji UTF-8, może to być Latin-2.

Po co konwertować HEX na tekst w programowaniu?

Przydaje się przy debugowaniu protokołów, odczycie logów, analizie magic bytes i sprawdzaniu, czy dane pole rzeczywiście zawiera tekst. Pozwala szybko zobaczyć, co kryje się za ciągiem szesnastkowym.

Powiązane narzędzia: konwerter Base64, konwerter systemów liczbowych i walidator JSON.

Zainstaluj Webp.pl Miej narzędzia we własnej kieszeni!