テキストを16進数に変換
「Hello, hex!」は「48656c6c6f2c2068657821」になります。11バイトをそれぞれ2桁の16進数で表したものです。16進数を貼り戻せば文字に戻り、奇数の桁や不正なバイトは推測せずに断ります。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- Hello, hex!
- Hex
- 48656c6c6f2c2068657821
- バイト
- 11
- 計算モード
- Encode
- エンコード
- utf-8
テキストと16進数は、同じUTF-8データを確認するための異なる表現です。テキストは人が読みやすく、16進数はソフトウェア、通信プロトコル、ログ、テストで使われる正確なバイトを示します。このコンバーターでは、文字列を連続した16進数へ変換したり、有効なバイト列を読めるテキストへ戻したりできます。ASCIIと複数バイトのUnicodeを一貫して処理し、バイト数と変換方向も返します。復号時には、桁数が奇数の値、16進数以外の文字、不正なUTF-8列を拒否するため、補完や置換文字によって元の情報が気付かないうちに変わることはありません。
読みやすい文字列を16進数バイトへ変換します
調査または受け渡しを行う文字列を正確に入力し、encodeモードを選択してください。文字列はUTF-8として直列化され、各バイトが2桁の小文字16進数で表されます。基本的なラテン文字は通常1バイトですが、アクセント付き文字、ラテン文字以外の文字、絵文字などは複数バイトになります。
この違いは重要です。 結果が示すのは見た目の文字やUnicodeコードポイントではなく、符号化されたバイトだからです。応答には、元の文字列、連続した16進数、UTF-8のバイト数、確定したモード、エンコーディング名が含まれます。空白、接頭辞、区切り文字は追加されないため、テスト用固定値、プロトコル例、コンパクトな保存項目、厳密な比較に利用できます。
意味のある空白、タブ、改行はデータとして符号化されますので、そのまま残してください。空文字列も有効で、結果は0バイトです。ネットワーク、時刻、乱数、外部状態を使わないため、同じ入力からは常に同じ結果が得られます。
16進数からUTF-8テキストへ安全に復号します
使用できるのは0から9およびaからfだけで構成された連続文字列です。大文字も受け付けますが、応答では小文字へ正規化されます。最初に文字数が偶数か確認します。
1バイトには完全な2桁が必要なため、奇数桁の値は推測、補完、切り捨てを行わず拒否されます。句読点、接頭辞、空白、区切り文字、16進数範囲外の文字も使用できません。この厳密な規則により、不正なデータが明確になり、自動処理の動作を予測できます。
解析後は、厳格なUTF-8デコーダーでバイトを読み取ります。不正な列の場合は、破損を隠す置換文字を挿入せず、入力エラーを返します。成功時の応答には、復元したテキスト、正規化した16進数、バイト数、decodeモード、UTF-8表記が含まれます。
空の16進数文字列は0バイトとして有効です。元データに空白や0x接頭辞がある場合は、送信前に取り除いてください。
確定的な変換を作業フローへ組み込みます
ブラウザーのフォームは、簡単なデバッグ、学習、コピーした値の変換、表示文字列のバイト確認にご利用ください。実用的なテストには、ASCII、複数バイトUnicode、正常な逆変換、奇数桁または禁止文字による失敗を含めてください。文字数とUTF-8バイト数は同じとは限らないため、バイト数も確認すると確実です。
連続した小文字16進数を常に返すので、大文字のdecode入力でも、固定テストと比較に使える標準表現になります。16進数は暗号化ではありません。内容を隠したり、送信者を認証したり、圧縮したり、秘密を保護したりするものではありません。
プロトコル文書、移行、ログ分析、相互運用性確認、教育、障害調査に適しています。大容量ファイルには、ファイル処理またはストリーミング対応のツールをご利用ください。
活用例
安定したソフトウェア固定値
単体テスト、文書、移行、言語間の検証に使える、標準化された小文字16進数を作成できます。
Unicodeの学習
ASCII、アクセント付き文字、各種文字体系、絵文字を比べ、表示文字ごとにUTF-8バイト数が異なる理由を確認できます。
よくある質問
encodeモードではUTF-8を使用しますか?
はい。 文字列をUTF-8バイトへ直列化し、各バイトを2桁の小文字16進数に変換します。
16進数の桁数が偶数でなければならないのはなぜですか?
1バイトには2桁の16進数が必要です。奇数桁では不完全なバイトが残るため拒否されます。
空白、ハイフン、0x接頭辞を含められますか?
いいえ。 decodeモードは検証と出力を明確にするため、連続した16進数字だけを受け付けます。
バイト列が有効なUTF-8でない場合はどうなりますか?
Unicode置換文字を黙って挿入せず、不正な入力としてエラーを返します。
16進数にすれば文字列を安全に隠せますか?
いいえ。 16進数は元に戻せるバイト表現であり、暗号化、ハッシュ、アクセス制御、秘密保護ではありません。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/text/text-to-hex \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello"}'const res = await fetch("https://api.kit.forhosting.com/text/text-to-hex", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/text/text-to-hex",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/text/text-to-hex", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/text/text-to-hex", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "Hello"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "text.text_to_hex",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_tokens | 20000 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
読みやすい文字列を16進数バイトへ変換します
encodeが初期値ですので、一般的な変換ではtextフィールドだけを送信できます。
16進数からUTF-8テキストへ安全に復号します
textフィールドに16進数バイトが入っている場合は、decodeモードを選択してください。
確定的な変換を作業フローへ組み込みます
スクリプト、SDK、継続的インテグレーション、文書生成、サポート業務で同じ処理を繰り返す場合はAPIが適しています。正常な1件の料金は$0.002です。不正な逆変換はinvalid_inputを返すため、データの問題とサービス障害を区別できます。
連携の活用例
プロトコルとAPIのデバッグ
短いフィールド、応答、メッセージの正確なUTF-8バイトを調べ、既知のバイトから読める文字列を復元できます。