私は1 つの文字に午後を一度失いました。 user& #39; sの名前はアクセント付きの文字を含み、それはデータベースではうまく見え、PDFエクスポートで壊れ、ログの疑問符のペアとして現れました。 グリフの背後にある実際のコードポイントを見ることができれば修正は簡単でしたが、そこに到達することは3 つの異なるツールと多くの目を細めることを意味しましたそれが私が構築した摩擦です unicode コンバーター で Toolz.dev 削除するには: 任意のテキストを貼り付け、それが何でできているかを正確に確認し、目の前のジョブが望む表記法で、それらの表記法のいずれかを復号して読みやすいテキストに戻すガイドと、それが公開する文字エンコーディングへのガイドです。
tl;dr: すべての文字には Unicode コード ポイントがあり、A. The Toolz の U+0041 のように書かれた番号です unicode コンバーター テキストをそのコード ポイントに 10 進数、16 進数、HTML エンティティ (A および A)、JavaScript エスケープ (A)、および CSS エスケープ (\41) を加えたものに変換し、それらのいずれかをテキストにデコードします。絵文字やその他のアストラル文字を真のコード ポイントで処理して正しく往復し、UTF-8 バイトで文字ごとのテーブルを表示し、完全にクライアント側で実行して、テキストがブラウザから離れることがないようにします。
Unicodeコンバータとは何ですか?
Unicode コンバーターは、読んだテキストとコンピューターが保存する数字の間を翻訳します。平易なラテン文字から中国の表意文字、絵文字に至るまで、すべての文字にはコード ポイントが割り当てられます unicode 標準、そしてその符号位置は通常、U+の後に4 から6 桁の16 進数が続く形式で記述される: 大文字AはU+0041、aeはU+00E9、涔はU+4E16、大地の絵文字はU+1F30D、変換器は入力したものを何でも読み、各文字の後ろに符号位置を示し、それから、異なる言語やフォーマットが期待する表記法のいずれかで、その同じ符号位置を表現できる。
1 つのコードポイントに非常に多くの書式がある理由は、異なるコンテキストが異なるエスケープルールを持つためです。 HTMLドキュメントは、次のような文字参照を使用します A 十進法または A 16 進数で。 javascript 文字列はを使用します A、または \u{1F30D} 基本範囲を超えた文字の場合。 CSS値が使用します \41 後続スペースを持つ スペック、バグ報告、Unicode チャートは U+ フォームを使用します それらはすべて同じ文字を指しています; 彼らは住んでいる場所に応じて異なる服を着ているだけです ツールはそれらを 1 つの入力からすべて生成し、それらのいずれかを反転するため、特定のファイルがどの構文を望んでいるかを覚えておく必要はなく、トリッキーな文字を手動で再入力する必要もありません。
Unicodeのコードポイントとは何ですか、そしてUTF-8 とはどのように異なりますか?
これはほとんどの符号化の混乱を解消する区別なので、正確である価値がある。 code point は文字を識別する抽象的な数値である。 it says nothing about how that number is stored in memory or sent over the wire. UTF-8 は符号位置をバイト列として符号化する具体的な方法の1 つで、で定義されている RFC 3629。 2 つは関連していますが、同じものではありません。それらを混ぜ合わせることが、多くの " のルーツです。なぜ私のテキストが文字化けしたのか、引用;バグ。
とって、コードポイント U+00E9.コードポイントとしては、10 進数で233 の単一の数値である.UTF-8 では2 バイトとして格納される, C3 A9。 UTF-16 では16 ビット単位1 個である。 character is one thing; そのバイト表現はエンコーディングに依存する。 converter の per-character テーブルは符号位置と UTF-8 バイトの両方を並べて表示するので、 とレンダリングする名前が見えたら é 代わりに é、すぐに古典的な症状を認識することができます: UTF-8 バイトは、あたかもLatin-1 のような1 バイトエンコーディングであるかのように読み取られます。 バイトを見ることは、多くの場合、エンコーディングの不一致を診断する最速の方法です。
これは、ツールが生成する表記法にわたる 1 文字の小さなマップです。
| 表記法 | ための値 (U+00E9) |
|---|---|
| コードポイント | U+00E9 |
| 小数 | 233 に指定されている |
| ヘックス | 0xe 9 |
| HTML 10 進数エンティティ | é |
| HTML hex エンティティ | é |
| JavaScript エスケープ | エ |
| CSS エスケープ | \ E9 |
| UTF-8 バイト | C3 A9 |
テキストをUnicodeに変換するにはどうすればよいですか?
Encode を選択し、必要な表記を選択し、テキストを入力または貼り付けます unicode コンバーター エンコードされた出力をすぐに表示し、文字ごとのテーブルにコード ポイント、10 進数値、HTML エンティティ、および UTF-8 バイトを各グリフごとに入力します。出力をコピーして、HTML、スタイルシート、スクリプト、またはドキュメントにドロップします。
4 つのステップが早いです。まず、テキストから表記に移行するエンコード、または逆に進むデコードを選択します。次に、コード ポイント、10 進数、16 進数、HTML エンティティ、JavaScript エスケープ、または CSS エスケープの形式を選択します。デコードには、一般的な形式を検出する自動モードがあります。 3 番目に、テキストを入力して変換を確認します。 4 番目に、結果をコピーします。アップロードもアカウントもありません。
HTML エンティティへの変換は最も一般的な用途の 1 つであり、専用エンティティと重複します html エンティティ などの名前付きエンティティに焦点を当てたツール & あんど ©。 ザ・ html エンティティガイド 名前付きエンティティが正しい選択である場合と、数値エンティティが正しい場合をカバーします。このコンバーターは、名前付きかどうかに関係なく、任意の文字の数値コード ポイント ビューを提供することで、それを補完します。
絵文字を正しく扱っているか?
はい、そしてこれは多くの単純なコンバータが静かに壊れた出力を生成する場所です。 U+FFFF 上の文字は、Unicode が補助平面と呼ぶものに生きており、JavaScript はそれぞれをサロゲート ペアと呼ばれる 2 つの 16 ビット コード ユニットとして内部に保存します。コンバータが一度に 1 コード ユニットずつ文字列を素朴に歩く場合、絵文字は 2 つの半分に分割され、元の文字に再組み立てされることはない 2 つの無意味なエスケープが放出されます。
このツールは真のコードポイントで反復されるため、地球のような絵文字 (U+1F30D) は全体を通して1 文字として扱われます。 エンコードすると、次の1 つのクリーンな値が得られます: \u{1F30D} ES6 JavaScriptフォームでは、 🌍 HTML実体として、コードポイントとしてU+1F30D それらのいずれかをデコードし、元の絵文字が丸ごと戻ってくる サロゲートペアとして記述されていた古いスタイルのJavaScriptエスケープをデコードする場合、 🌍、ツールは、2 つの壊れたコードユニットを残さず、半分を正しく組み合わせます。コンバーターを介して絵文字をラウンドトリップすると、最初に始めたものを正確に返します。これは、Unicode ツールが合格しなければならず、多くの失敗するベースライン テストです。
Unicode エスケープをテキストに戻すにはどうすればよいですか?
Decode に切り替え、エンコードされた文字列を貼り付け、一致する形式を選択するか、auto に残します。 auto モードは U+ 表記を認識します、 \u あんど \u{} JavaScript がエスケープし、 &# あんど &#x 同じ入力内の HTML エンティティなので、ログまたは構成ファイルからの混合ペーストは引き続きデコードされます。正確な形式がわかっている場合は、それを直接選択することが最も信頼できるオプションです。特に、裸の数値があいまいになる可能性がある 10 進数または単純 16 進数の場合。
デコードは、エンコードされたテキストの受信側にいるときに到達するジョブの半分、つまり JSON ペイロードがいっぱいになることです \u エスケープ、数値エンティティだらけの HTML ソース ビュー、エスケープ形式で文字列を記録したスタック トレース。文字ごとに手動でデコードするのではなく、全体を貼り付けてプレーン テキストを読み返します。コンバーターは元の文字を再構築し、上で述べたように、遭遇したサロゲート ペアに正しく再結合するため、アストラル文字は旅行を生き延びます。
これはサイト上の他のデコードツールとよくペアリングします。 URL内のパーセントエンコードされたテキストは、の仕事です url エンコーダと定義され、base64 でエンコードされたバイナリは、によって処理されます base64 コンバーター。 (中略)それらは輸送手段ごとに異なる符号化であり、どれを見ているかを知ることは戦いの半分である。 としている Web 開発者ツールキット このガイドでは、これらのエンコーディング ツールが日常業務にどのように適合するかを説明します。
実際に CSS や JavaScript のエスケープが必要なのはいつですか?
予想以上に頻繁に、そして通常は正確な瞬間に何かがレンダリングされていません。 CSSでは、 content aのプロパティ ::before や ::after 擬似要素には、あらゆる状況で任意の文字を直接含めることはできないため、それらをエスケープします。右向きの矢印になります content: "\2192"。 16 進エスケープを終了する末尾スペースを含む CSS エスケープ ルールは、で定義されています CSS構文モジュール レベル3と、コンバータはまさにそのフォームを放射するので、それをそのままスタイルシートに貼り付けることができます。
JavaScript では、escapes を使用すると、ファイル & #39;s エンコーディングやエディターが正しくレンダリングするかどうかに依存せずに、文字をソース コードに入力できます。 © は、パイプライン内のツールによってリテラル著作権シンボルがめちゃくちゃになる可能性がある箇所が明確です。 基本平面を超えた文字の場合、ES6 \u{...} フォームはサロゲートペアよりもクリーンで、コンバーターは4 桁を維持しながらアストラル文字に使用します \uXXXX 収まる文字のフォーム。 HTML 数値文字参照、 &#...; フォームはマークアップにおいて同じ目的を果たし、によって管理されます WHATWG HTML 標準。これらを 1 つの入力からすべて生成すると、構文での推測をやめ、毎回正しいエスケープをコピーできます。
どの表記をいつ使うべきですか?
提供されている7 つの出力形式では、実用的な質問は、特定のタスクがどれを望んでいるのか、そして答えは、ほとんどの場合、好みではなく、キャラクターがどこに住むかによって決まります。 HTMLを書いていて、入力するのが面倒なキャラクターや、そうでなければマークアップとして解釈されるキャラクターが必要な場合は、HTMLエンティティを使用します: — またはそのヘックスツイン —。文字が JavaScript 文字列リテラルに入っている場合は、 を使用します \u 逃げて、手を伸ばしてください \u{...} 文字が基本平面を超えているときに形成します。 CSS 値に属する場合、特に content プロパティ、末尾のスペースで CSS エスケープを使用します。レンダリングせずに文字に明確に名前を付けたいスペック、コメント、またはバグ レポートを作成する場合、U+ コード ポイント フォームは誰もが認識する規則です。
10 進数と 16 進数の出力は、人々が到達する頻度は低いですが、生の数字で話すシステムと話しているときは重要です。コード ポイントを保存するデータベース列、文字を整数として送信するプロトコル、Unicode データ ファイルに対するルックアップなど、文字を 10 進数または 16 進数の裸の値に反転し、再度戻すことができるため、デバッグ セッションの奥深くにあるまさにその瞬間に手動でベース変換を保存できます。
それらすべてを横断するルールが 1 つあります。発行する表記が何であれ、デコードして元に戻し、信頼する前に元の文字を取得することを確認します。ラウンド トリッピングは最も安価な正しさチェックであり、アストラル文字と 16 進数のオフバイワンの 2 つの古典的な間違いをすぐにキャッチします。コンバーターは、そのチェックを 1 つのペーストと反対方向に実行します。セキュリティに敏感な値が関係する場合、同じ規律が、によって処理されるパーセント エンコーディングにも適用されます url エンコーダ、間違ったエスケープがサーバーが実際に受信するものを変更できる場所。
ここで機密テキストを変換しても安全ですか?
はい。すべての変換はブラウザ内の JavaScript で行われます。貼り付けたものはサーバーに送信されず、ログに記録されるものは何もなく、ページが読み込まれるとツールは接続をオフにして動作し続けます。プライベート文字列、ユーザー データ、または内部ファイルの内容をマシンから離れることなく検査できます。
そのプロパティは偶発的ではありません、それはこの種の作業のためにクライアント側のツールを好む理由です Unicodeコンバーターを介して実行するテキストは、多くの場合、あなたが最もサードパーティに手渡したくないテキストです: 実際のuser& #39; デバッグしているsの名前、プライベートデータセットのスニペット、未リリースの機能からの文字列 サーバー側のコンバーターは、たとえ信頼性があっても、チェーン内のもう1 つのパーティーです ブラウザで作業を行うと、質問が削除されます より広い推論はにあります データプライバシー オンラインツール ガイド, そして、それは上のすべてのエンコーディング ツールに適用されます Toolz.dev, このものから、 base64 エンコーディングガイド そしてその先へ.
よくある質問
テキストをUnicodeに変換するにはどうすればよいですか?
Encode を選択した状態でテキストを入力領域に貼り付け、コード ポイントや HTML エンティティなどの形式を選択します。ツールは、ブラウザ内のすべての文字の Unicode 表現を即座に示します。
Unicodeのコードポイントとは何ですか?
コード ポイントは、Unicode が文字に割り当てる番号で、A の U+0041 のように書かれます。コード ポイントは、文字の保存方法とは無関係に文字を識別します。そのため、同じコード ポイントが HTML エンティティ、JavaScript エスケープ、または CSS エスケープとして表示されます。
コードポイントとUTF-8 の違いは何ですか?
コードポイントは文字の抽象的な数値です; UTF-8 はその数値を 1 ~ 4 バイトとして保存する 1 つの方法です。文字ごとのテーブルは両方を示すため、2 つの UTF-8 バイト C3 A9 として 2 つの ere の U+00E9 が保存されていることがわかります。
絵文字を正しく扱っているか?
はい。 絵文字は基本範囲外に住んでおり、JavaScript では代理ペアとして保存されます。コンバーターはそれらを真のコード ポイントで読み書きするため、地球 (U+1F30D) のような絵文字は、2 つの分割された半分に分割されることなくラウンド トリップします。
Unicode エスケープをテキストに戻すにはどうすればよいですか?
Decode に切り替えてエンコードされた文字列を貼り付け、一致する形式を選択するか、auto を使用して検出します。ツールは元の文字を再構築し、見つけたサロゲート ペアを正しく組み合わせます。
CSS エスケープはいつ必要ですか?
CSS エスケープを使用すると、content プロパティなどのスタイルシート値に文字を入力できます。ツールは、CSS が 16 進エスケープを終了するために使用する末尾のスペースを持つ \41 などの値を出力し、content プロパティに貼り付ける準備が整います。
一度に同じ文字をいくつかの形式に変換できますか?
はい。 format を選択するとメイン出力が設定され、文字ごとのテーブルには常にコード ポイント、10 進数値、HTML エンティティ、および UTF-8 バイトが文字ごとに表示されるため、複数の表記を一目で読み取ることができます。
ここで機密テキストを変換しても安全ですか?
はい。すべての変換はブラウザ内の JavaScript で行われます。サーバーには何も送信されず、何もログに記録されず、ツールは接続を無効にして動作します。
ザ・ unicode コンバーター は無料で、ブラウザで完全に実行され、サインアップは必要ありません。文字を任意の表記法にエンコードし、デコードして戻し、任意のグリフの背後にある生のバイトを読み取ります。 と並べて探索します asciiテーブル そして残りのエンコーディング ツールもオンになっています Toolz.dev。



