2009年2月17日火曜日

URLデコード

URLエンコードとURLデコード

URIの規則を定める RFC 3986 では、URIにASCIIの非予約文字以外の文字か'=','&','%','+'を記述する場合、"%XX" (XX=2桁の16進数)に変換することを定めている。

URLデコードのアルゴリズムは文字コードの種類によって異なっている。
下記例の場合、以下のように変換
"2009はチェンジ(change)の年"
2 0 0 9 は チ ェ ン ジ ( c h a n g e ) の 年
Shift_JIS 3230 3039 82cd 8360 8346 8393 8357 2863 6861 6e67 6529 82cc 944e
Shift_JIS URLエンコード 2 0 0 9 %82%cd %83%60 %83F %83%93 %83W %28c h a n g e%29 %82%cc %94N
EUC 3230 3039 a4cf a5c1 a5a7 a5f3 a5b8 2863 6861 6e67 6529 a4ce c7af
EUC URLエンコード 2 0 0 9 %a4%cf %a5%c1 %a5%a7 %a5%f3 %a5%b8 %28c h a n g e%29 %a4%ce %c7%af
UTF-8 3230 3039 e381af e38381 e382a7 e383b3 e382b8 2863 6861 6e67 6529 e381ae e5b9b4
UTF-8 URLエンコード 2 0 0 9 %e3%81%af %e3%83%81 %e3%82%a7 %e3%83%b3 %e3%82%b8 %28c h a n g e%29 %e3%81%ae %e5%b9%b4

エンコードする際は文字コードの前に%をつけ、デコードする際は、%を外す。

0 件のコメント: