回答:
HTMLエンコーディングは、HTMLドキュメントで使用される文字列内の特殊文字をエスケープして、変更などのHTML要素との混同を防ぎます。
"<hello>world</hello>"
に
"<hello>world</hello>"
URLエンコードは、URLの文字列値に対して、変更のように同様のことを行います
"hello+world = hello world"
に
"hello%2Bworld+%3D+hello+world"
urlEncodeは、特殊文字を、アドレス指定の目的でWebブラウザ/ Webサーバーが理解できる文字に置き換えます...したがってURL。たとえば、スペースは%20、 '=%27などに置き換えられます。
これらの参考資料を参照してください。
HtmlEncodeは、特殊文字をHTMLエンジン自体によって認識される文字列に置き換えて、ページのコンテンツをレンダリングします。& or < = < > = <
これにより、HTMLエンジンがこれらの文字をHTMLマークアップの一部として解釈できなくなり、あたかもそれらがそうであるかのようにレンダリングされます。文字列。
このリファレンスを参照してください:
HTMLとURLはどちらも、本質的に非常に制約のある言語です。言語として、特定のキーワードまたは演算子に意味を追加します。ただし、これらの言語の両方で、キーワードはほとんどの場合1文字です。例えば
各言語の使用では、言語の意味を保証しない方法でこれらの構成を使用することは可能ですが。たとえば、この投稿には>文字が含まれています。HTMLとして解釈されるのではなく、テキストだけとして解釈されるようにします。
ここで、エンコードとデコードのメソッドが役立ちます。これらのメソッドはそれぞれ文字列を受け取り、キーワードとして扱われる文字を、言語の一部として解釈されないエスケープ形式に変換します。
例:>をHtmlEncodeに渡すと、&gt;が返されます。
あなたがどの言語で作業しているのかわかりませんが、例えばPHPのマニュアルには良い説明があります。
URLエンコード
-_を除くすべての英数字以外の文字を含む文字列を返します。パーセント(%)記号に置き換えられ、その後にプラス(+)記号としてエンコードされた2桁の16進数とスペースが続きます。これは、WWWフォームから投稿されたデータがエンコードされるのと同じ方法でエンコードされます。つまり、application / x-www-form-urlencodedメディアタイプの場合と同じ方法です。これは、歴史的な理由から、スペースがプラス(+)記号としてエンコードされるという点で、»RFC 1738エンコーディング(rawurlencode()を参照)とは異なります。