Przejdź do treści

Zrzut Hex

Zamień tekst w klasyczny zrzut szesnastkowy z przesunięciami i rynną ASCII lub przeczytaj go ponownie.

Wejście

Zrzut Hex

Zrzut hex to wygląd pliku, gdy przestajesz ufać temu, co pokazuje edytor i zamiast tego czytasz surowe bajty. To narzędzie układa bajty tekstu w formacie UTF-8 w znanym układzie hexdump -C: 8-cyfrowe przesunięcie po lewej stronie, szesnaście bajtów w wierszu zapisanych jako dwucyfrowe pary hex i odstęp ASCII po prawej stronie, gdzie każdy drukowalny bajt jest wyświetlany jako on sam, a wszystko inne — tabulatory, znaki nowej linii, kody sterujące i górne bajty znaku wielobajtowego — są wyświetlane jako kropka. Dodatkowa spacja dzieli każdy wiersz przez środek, tak jak robią to xxd i hexdump, dzięki czemu możesz policzyć do ósmego bajtu bez utraty miejsca.

Czytanie zrzutów ekranu to zadanie, które wykonuje najlepiej. Zbłąkana spacja o zerowej szerokości, spacja nierozdzielająca udająca normalną, CRLF systemu Windows, w którym spodziewałeś się gołej nowej linii, emoji o długości czterech bajtów — wszystkie są niewidoczne w zwykłym tekście i oczywiste w momencie, gdy zobaczysz bajty. Kolumna offset informuje dokładnie, jak daleko na wejściu znajduje się zaskakujący bajt, a tego właśnie potrzebujesz, gdy parser odrzuci linię 1 bez widocznego powodu.

Zmień tryb, aby przejść w drugą stronę: wklej zrzut — z tego narzędzia, z xxd, z hexdump -C lub po prostu luźne hex, np. 48 65 6c 6c 6f — i odzyskaj oryginalny tekst. Parser ignoruje kolumnę offset i odstęp ASCII, toleruje 2-bajtowe grupowanie używane przez xxd i usuwa przedrostki 0x lub \\x, więc kopiowanie i wklejanie z terminala zwykle po prostu działa. Opcja wielkich liter zapisuje A-F zamiast a-f dla formatów, które tego oczekują.

Wszystko działa lokalnie w przeglądarce za pomocą wbudowanego kodera UTF-8. Nic nie jest przesyłane, co ma znaczenie, gdy sprawdzane bajty pochodzą z tokena, ładunku lub pliku prywatnego. Liczba pod wynikami liczy bajty i wiersze, więc znaki wielobajtowe są łatwe do wykrycia.

Częste pytania

Co to jest zrzut hex?
Zrzut hex to widok danych bajt po bajcie: każdy bajt zapisany jako dwie cyfry hex, szesnaście w rzędzie, z przesunięciem po lewej stronie i czytelną kolumną ASCII po prawej. Jest to standardowy sposób sprawdzania dokładnej zawartości tekstu lub pliku, łącznie ze znakami ukrytymi przez edytora.
Co oznaczają kropki w kolumnie ASCII?
Każdy bajt będący drukowalnym znakiem ASCII (0x20 do 0x7e) jest wyświetlany jako sam; co drugi bajt — kod kontrolny, znak nowej linii lub część wielobajtowego znaku UTF-8 — jest pokazywany jako kropka, dzięki czemu kolumny pozostają wyrównane. hex po lewej stronie zawsze pokazuje rzeczywistą wartość.
Czy może odczytać dane wyjściowe xxd i zrzutu hex z powrotem do tekstu?
Tak. Przełącz na tryb dekodowania i wklej dane wyjściowe z xxd, hexdump -C, tego narzędzia lub zwykłego hex oddzielonego spacjami. Kolumna przesunięcia i odstęp ASCII są ignorowane, obsługiwane jest 2-bajtowe grupowanie używane przez xxd, a prefiksy 0x lub \x są usuwane przed dekodowaniem.
Dlaczego mój tekst ma więcej bajtów niż znaków?
Tekst jest kodowany w formacie UTF-8, gdzie znaki ASCII mają po jednym bajcie, litery akcentowane zajmują dwa, a większość emoji cztery. Zrzut hex sprawia, że jest to widoczne: liczba bajtów pod danymi wyjściowymi jest zwykle większa niż liczba znaków w przypadku dowolnego tekstu w języku innym niż angielski.
Czy mój tekst jest gdzieś przesłany?
Nie. Zrzut jest tworzony w całości w przeglądarce i nic, co wklejasz, nie jest wysyłane na serwer ani przechowywane, więc można bezpiecznie sprawdzić bajty z tokena, ładunku lub pliku prywatnego.