Delphiで無料でプログラミングしてみるお

このエントリーをはてなブックマークに追加
239デフォルトの名無しさん
結局Janeのソースからコピペしました
Indy弄るの飽きてきた

URLエンコードやエスケープと呼ばれていたものは
RFC3986でパーセントエンコーディングという呼び方に決まったそうです

全体をパーセントコーディングすると「ユーザー情報を消失しました」とでるので
=の右辺だけ変換するようにして完成

今回はTClientSocketじゃなくてわざわざIndyを使うメリットなかったなぁ

function URLEncode(const str: string): string;
var
    s: string;
    i: integer;
begin
    s := '';
    for i := 1 to length(str) do
    begin
        case str[i] of
        '0'..'9','A'..'Z','a'..'z':
            s := s + str[i];
        else
            s := s + Format('%%%2.2X', [Ord(str[i])]);
        end;
    end;
    result := s;
end;

ソースと実行ファイル
http://vipperup.orz.hm/miniup/src/viup0403.zip