• ベストアンサー

UTF-8での%(パーセント記号)はどんな意味?

文字コード UTF-8 で、E381ABとする場合に %E3%81%AB とするようなのですが、 %(パーセント記号)をつける意味がわかりません。 どなたか教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • gungnir7
  • ベストアンサー率43% (1124/2579)
回答No.2

俗にいう制御文字を含まないようにするためです。 制御文字回避はUTF-8だけでなく情報処理全般にいえる常識だと思って下さい。 文字体系でASCIIを使っている場合は必須になります。 識別方法は色々ありますがWebでは%が中心になっています。 制御コードには例えば改行コードやTABなどがあります。 問い合わせを示す?は制御コードではありませんが、重要な意味を持ちます。 ところが日本語は2バイトですから2バイト目が制御コードにかかってくることはたくさんあります。 このとき%で区別していないと漢字なのか制御なのか分からず滅茶苦茶になります。

sai2003
質問者

お礼

友人から以下の通りメッセージを受け取りました。 webではパーセント記号が中心ですね。 制御コードとの識別ということで納得いたしました。 ありがとうございます。 *わたしからもお礼いたします。

その他の回答 (1)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.1

%をつけるのはURLエンコードという方法です インターネットの約束でURLには英数字と一部の記号以外は使えないので日本語などを扱う場合にはこうします。

sai2003
質問者

お礼

素早い書き込みありがとうございました。 友人が、データベース(桐)で、項目値をUTF-8に変換して、シェル実行でグーグルを検索するというプログラムを作っています。 私に知らないかと聞いてきたので、お尋ねしてみました。