十六进制编码/解码

100% 客户端处理(无服务器上传)。将文本编码为十六进制,可选择输出样式(纯文本、0x…、C 语言 \xHH、%HH)、字母大小写、字节分隔符、可选换行以及可配置的行尾格式。

Loading…

关于 十六进制编码器(文本)

使用此页面直接在浏览器中将文本编码为十六进制。选择输出格式(纯十六进制、0x… 样式、C 语言 \xHH 转义或百分号 %HH),控制大小写和分隔符,并可选择每行换行以提高可读性。需要反向操作?请使用另一页面。

功能特点

  • 100% 客户端处理(无服务器上传)。
  • 多种十六进制输出格式:纯文本(deadbeef)、0x… 前缀、C 语言转义(\xHH)、百分号(%HH)
  • 小写或大写输出
  • 字节分隔符:无、空格、冒号、短横线、下划线、逗号
  • 每行换行字节数(0 表示禁用换行)
  • 可选的“插入最终换行符”以获得干净的文件输出
  • 字符集选择(文本 → 字节)。不支持的字符集将回退到 UTF-8。
  • 可选的逐行处理及可选的行尾格式(LF 或 CRLF)

使用方法 for hex-encoder

1

粘贴或拖放内容

将您的文本粘贴到编辑器中(或拖放文本文件,如 .txt、.md、.json、.yaml)。如果您的输入不是纯 ASCII 码,请选择正确的“字符集”,以便按预期生成字节。

2

点击“编码”

选择您的十六进制格式(纯文本 / 0x / C 语言转义 / 百分号),设置字母大小写和字节分隔符,并可选择每行换行字节数。然后点击“编码”以生成十六进制输出。

3

复制或下载

复制编码后的十六进制输出或将其下载为文本文件。如果您启用了“插入最终换行符”,输出将以换行符结尾,以便获得更清晰的差异比较和命令行管道操作。

技术规格

执行模型

此页面在您的浏览器中执行十六进制编码,不会将您的输入上传到服务器。

方面详情
运行时100% 客户端处理(无服务器上传)。
变体范围编码页面(文本 → 十六进制)
限制约 1–2MB 字符;约 25000 毫秒超时
数据保留所有处理均在您的浏览器本地完成(无需上传)
输入文本(使用所选字符集解释为字节)
输出文本(十六进制数字,根据格式可选地进行标记化/添加前缀)
即使采用本地处理,也应避免粘贴您无法承担泄露风险的机密信息(屏幕共享、浏览器扩展、遥测和复制/粘贴历史记录仍可能导致数据泄露)。对于敏感材料,建议使用本地工具。

迷你示例

使用默认的纯十六进制格式的最小编码示例。

输入(文本):Hello
输出(纯十六进制,UTF-8):48656c6c6f
仅当您更改格式化选项(格式/大小写/分隔符/换行)或用于将文本转换为字节的“字符集”时,相同的输入才会产生不同的十六进制输出。

错误与边界情况

编码通常很直接;大多数意外源于文本到字节的转换选择以及格式预期。

现象可能原因检查事项
输出与其他工具不匹配字符集(文本→字节)不同或格式化样式不同确认“字符集”和十六进制格式(纯十六进制 vs 0x vs \xHH vs %HH),以及大小写/分隔符
意外的换行启用了换行或最终换行符将“每行换行字节数”设置为0以禁用换行;切换“插入最终换行符”选项
逐行输出与全文编码不同逐行模式改变了输入的分段方式如果您想要单一连续的编码,请禁用“逐行处理”
格式对目标系统看起来不正确选择的输出格式不符合使用者的预期对于C/JS字面量,使用\xHH;对于类似URI的上下文,使用%HH;对于日志/人工阅读,使用纯十六进制或带分隔符的0x样式
大输入导致超时或工具错误输入超出客户端限制保持输入在约1–2MB字符以内,并考虑对大型文件使用本地CLI编码

命令行替代方案

对于机密信息、自动化或CI,请在本地进行编码。以下是文本/字节→十六进制的常见、规范选项。

Linux/macOS

将UTF-8字符串编码为纯十六进制(xxd)

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

xxd将字节打印为十六进制。-p输出纯十六进制;-c控制每行的列数。

将字符串编码为十六进制(Python)

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

使用UTF-8将文本编码为字节,然后将字节转换为十六进制。

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编码。

为什么我的编码输出与另一个十六进制工具不匹配?

大多数不匹配是由不同的文本编码(字符集)或输出格式(纯文本 vs 0x vs \xHH vs %HH、分隔符、换行、大小写)引起的。请调整“字符集”和格式化选项以匹配目标工具/系统。

“纯文本”、“0x”、“\xHH”和“%HH”输出之间有什么区别?

它们以不同的文本表示法表示相同的字节:纯文本是连续的十六进制数字;0x添加十六进制前缀(可选每字节);\xHH是每字节的C风格转义;%HH匹配URI/URL上下文中使用的百分比编码风格。

Pro Tips

Best Practice

若以兼容性为目标,请先确定表示法:纯文本用于转储,0x 用于多数开发工具,\xHH 用于类 C/JS 字面量,%HH 用于 URL 风格场景。

Best Practice

当工具间输出不一致时,在归咎于十六进制编码器之前,请先验证“字符集”(文本→字节)设置。

Best Practice

为保持差异对比和管道传输的清晰性,请保持换行禁用(bytesPerLine = 0),并仅在您的工作流需要时启用“插入最终换行符”。

Best Practice

对于机密或受监管数据,请在 CI 环境或本地机器上编码,而非依赖浏览器剪贴板工作流。

Additional Resources

Other Tools