Шістнадцяткове кодування/декодування

100% обробка на стороні клієнта (без завантаження на сервер). Кодуйте текст у Hex з вибором стилів виводу (простий, 0x…, C \xHH, %HH), регістру, роздільників байтів, опціонального перенесення та налаштовуваними закінченнями рядків.

Loading…

Про інструмент Hex-кодувальник (Текст)

Використовуйте цю сторінку для кодування тексту в Hex прямо у вашому браузері. Оберіть формат виводу (простий hex, стиль 0x…, C-стиль \xHH, або відсотковий %HH), керуйте регістром і роздільниками, та опціонально переносите байти на рядок для читабельності. Потрібен зворотний напрямок? Скористайтеся іншою сторінкою.

Можливості

  • 100% обробка на стороні клієнта (без завантаження на сервер).
  • Кілька форматів Hex-виводу: простий (deadbeef), префікс 0x…, C-екранування (\xHH), відсотковий (%HH)
  • Вивід у нижньому або верхньому регістрі
  • Роздільники байтів: відсутні, пробіл, двокрапка, тире, підкреслення, кома
  • Перенесення байтів на рядок (0 вимикає перенесення)
  • Опція "Вставити фінальний перехід на новий рядок" для чистих файлових виводів
  • Вибір кодування символів (текст → байти). Непідтримувані кодування повертаються до UTF-8.
  • Опціональна обробка рядок за рядком та вибір закінчень рядків (LF або CRLF)

Як користуватися for hex-encoder

1

Вставте або перетягніть вміст

Вставте ваш текст у редактор (або перетягніть текстовий файл, такий як .txt, .md, .json, .yaml). Якщо ваш ввід не є звичайним ASCII, оберіть правильне "Кодування символів", щоб байти були створені належним чином.

2

Натисніть "Закодувати"

Оберіть ваш Hex-формат (простий / 0x / C-екранування / відсотковий), встановіть регістр і роздільники байтів, та опціонально перенесіть байти на рядок. Потім натисніть "Закодувати", щоб згенерувати Hex-вивід.

3

Скопіюйте або завантажте

Скопіюйте закодований Hex-вивід або завантажте його як текстовий файл. Якщо ви увімкнули "Вставити фінальний перехід на новий рядок", вивід закінчуватиметься новим рядком для чистіших diff та CLI пайпінгу.

Технічні характеристики

Модель виконання

Ця сторінка виконує Hex-кодування у вашому браузері та не завантажує ваш ввід на сервер.

АспектДеталі
Середовище виконання100% обробка на стороні клієнта (без завантаження на сервер).
Область варіантуСторінка кодування (текст → Hex)
Обмеження~1–2МБ символів; ~25000 мс таймаут
ЗбереженняУся обробка відбувається локально у вашому браузері (без завантаження)
Вхідні даніТекст (інтерпретується як байти з використанням вибраної кодувальної таблиці)
Вихідні даніТекст (шістнадцяткові цифри, опціонально токенізовані/з префіксом залежно від формату)
Навіть при локальній обробці уникайте вставки секретів, які не можете дозволити собі розкрити (спільний доступ до екрана, розширення браузера, телеметрія та історія копіювання/вставки все ще можуть призвести до витоку даних). Для конфіденційних матеріалів віддавайте перевагу локальним інструментам.

Міні-приклад

Мінімальний приклад кодування з використанням стандартного простого шістнадцяткового формату.

Вхідні дані (текст): Hello
Вихідні дані (простий hex, UTF-8): 48656c6c6f
Ті самі вхідні дані дають різний Hex лише якщо ви зміните параметри форматування (формат/регістр/роздільники/перенесення) або "Кодувальну таблицю", що використовується для перетворення тексту в байти.

Помилки та крайні випадки

Кодування зазвичай є простим; більшість несподіванок виникає через вибір перетворення тексту в байти та очікування щодо форматування.

СимптомЙмовірна причинаЩо перевірити
Вихідні дані не збігаються з іншим інструментомРізна кодувальна таблиця (текст → байти) або різний стиль форматуванняПідтвердьте "Кодувальну таблицю" та формат Hex (простий vs 0x vs \xHH vs %HH), а також регістр/роздільники
Неочікувані розриви рядківУвімкнено перенесення або фінальний перехід на новий рядокВстановіть "Переносити байти на рядок" на 0, щоб вимкнути перенесення; перемкніть "Вставляти фінальний перехід на новий рядок"
Вихідні дані на рядок відрізняються від кодування всього текстуРежим рядок-за-рядком змінює спосіб сегментації вхідних данихВимкніть "Обробляти рядок за рядком", якщо хочете єдиного безперервного кодування
Формат виглядає неправильним для цільової системиОбраний формат вихідних даних не відповідає очікуванням споживачаДля літералів C/JS використовуйте \xHH; для контекстів, подібних до URI, використовуйте %HH; для логів/людей використовуйте простий стиль або стиль 0x з роздільниками
Тайм-аут або помилка інструменту при великих вхідних данихВхідні дані перевищують клієнтські обмеженняТримайте вхідні дані в межах ~1–2MB символів і розгляньте локальне CLI кодування для великих файлів

Альтернативи командного рядка

Для секретів, автоматизації або CI кодуйте локально. Нижче наведено поширені, канонічні варіанти для тексту/байтів → Hex.

Linux/macOS

Закодувати рядок UTF-8 у простий hex (xxd)

printf %s "Hello" | xxd -p -c 256

xxd виводить байти як hex. -p виводить простий hex; -c контролює стовпці на рядок.

Закодувати рядок у hex (Python)

python -c "s='Hello'; print(s.encode('utf-8').hex())"

Закодуйте текст у байти з UTF-8, потім конвертуйте байти в hex.

Node.js

Кодувати текст у шістнадцятковий формат (Node Buffer, UTF-8)

node -e "const s='Hello'; console.log(Buffer.from(s,'utf8').toString('hex'));"

Buffer за замовчуванням кодує рядок як UTF-8, коли це вказано, а потім відображає шістнадцятковий формат за допомогою toString('hex').

Windows PowerShell

Кодувати текст у шістнадцятковий формат (UTF-8)

powershell -NoProfile -Command "$s='Hello'; $bytes=[Text.Encoding]::UTF8.GetBytes($s); ($bytes | ForEach-Object { $_.ToString('x2') }) -join ''"

Перетворити рядок на байти UTF-8 і відформатувати кожен байт як два шістнадцяткові символи.

Сфери застосування

Читабельна інспекція байтів

  • Перетворити короткий текст у шістнадцяткове представлення для налагодження
  • Генерувати шістнадцяткові фрагменти для журналів, документів або заявок

Сумісність із системами, що очікують шістнадцяткового запису

  • Створювати шістнадцяткові значення з префіксом 0x або роздільниками для файлів конфігурації та інструментів
  • Генерувати послідовності \xHH для вбудовування байтів у контексти, подібні до C/JS

CI та відтворювані фікстури

  • Створювати детерміновані шістнадцяткові фікстури для тестів
  • Стандартизувати форматування (регістр/роздільники/перенесення) для порівнянь та перевірок

Навчання: байти проти тексту

  • Показати, як обраний набір символів змінює базові байти
  • Продемонструвати, як параметри форматування впливають на представлення, не змінюючи байти

❓ Frequently Asked Questions

Чи є публічний API?

Ні. Цей інструмент призначений для інтерактивного використання в браузері та не надає публічного API.

Обробка локальна чи віддалена?

100% обробка на стороні клієнта (без завантаження на сервер). Усе кодування виконується локально у вашому браузері.

Чи можна вставляти секрети (ключі API, паролі, токени)?

Безпечніше не робити цього. Навіть при локальній обробці секрети можуть потрапити назовні через спільний доступ до екрана, розширення браузера, історію буфера обміну або компрометацію пристрою. Для чутливих даних краще використовувати локальне кодування через CLI.

Чому мій закодований результат не збігається з іншим шістнадцятковим інструментом?

Більшість розбіжностей спричинені різними кодуваннями тексту (наборами символів) або різним форматуванням виводу (простий, 0x, \xHH, %HH, роздільники, перенесення, регістр). Налаштуйте параметри "Набір символів" та форматування, щоб вони відповідали цільовому інструменту/системі.

Яка різниця між виводом "простий", "0x", "\xHH" та "%HH"?

Вони представляють одні й ті самі байти в різних текстових нотаціях: простий — це суцільні шістнадцяткові цифри; 0x додає шістнадцятковий префікс (опціонально для кожного байта); \xHH — це екранування в стилі C для кожного байта; %HH відповідає стилю процентного кодування, що використовується в контекстах URI/URL.

Pro Tips

Best Practice

Якщо ваша мета — сумісність, спочатку визначтеся з нотацією: звичайний текст для дампів, 0x для багатьох інструментів розробника, \xHH для літералів на кшталт C/JS, а %HH для контекстів у стилі URL.

Best Practice

Коли вивід відрізняється в різних інструментах, перевірте «Набір символів» (текст → байти), перш ніж звинувачувати кодувальник шістнадцяткових чисел.

Best Practice

Для чистих diff та конвеєрної обробки тримайте обгортання вимкненим (bytesPerLine = 0) і вмикайте «Вставити фінальний перехід на новий рядок» лише тоді, коли ваш робочий процес цього очікує.

Best Practice

Для секретів або регульованих даних кодуйте локально в CI або на своєму комп’ютері, а не покладайтеся на робочий процес буфера обміну в браузері.

Additional Resources

Other Tools