首页 > 学院 > 开发设计 > 正文

url编码与解码工具代码

2019-11-18 17:58:10
字体:
来源:转载
供稿:网友



url编码与解码工具代码,做sql注入分析时会用到

代码部分:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, HTTPApp;

type
TForm1 = class(TForm)
  Button1: TButton;
  Memo1: TMemo;
  Memo2: TMemo;
  Button2: TButton;
  PRocedure Button1Click(Sender: TObject);
  procedure Button2Click(Sender: TObject);
private
  { Private declarations }
  function URLEncode(const msg : String) : String;
  function GetMemoText(memo:TMemo):string;
public
  { Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
ss: string;
begin
ss := GetMemoText(Memo1);
Memo1.Text :=ss;
Memo2.Clear;
for i := 1 to Length(ss) do
begin
  Memo2.Text := Memo2.Text + '%' + IntToHex(Ord(ss), 2);
end;
end;

function TForm1.URLEncode(const msg: String): String;
var
  I : Integer;
begin
  Result := '';
  for I := 1 to Length(msg) do begin
    if msg[I] = ' ' then
        Result := Result + '+'
    else if msg[I] in ['a'..'z', 'A'..'Z', '0'..'9'] then
        Result := Result + msg[I]
    else
        Result := Result + '%' + IntToHex(ord(msg[I]), 2);
  end;

end;

procedure TForm1.Button2Click(Sender: TObject);
var ss:string;
begin
Memo2.Clear;
ss :=GetMemoText(Memo1);
Memo1.Text :=ss;
Memo2.Text :=HTTPDecode(trim(ss));
end;

function TForm1.GetMemoText(memo: TMemo): string;
var i:integer;
begin
for i:=0 to memo.Lines.Count-1 do
begin
  Result :=Result + trim(memo.Lines);
end;
end;

end.
url编码与解码工具附代码


url编码与解码工具附代码,代码很简单,做sql注入分析时经常用到,但一时又找不到,就写了一个


代码部分:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, HTTPApp;

type
TForm1 = class(TForm)
  Button1: TButton;
  Memo1: TMemo;
  Memo2: TMemo;
  Button2: TButton;
  procedure Button1Click(Sender: TObject);
  procedure Button2Click(Sender: TObject);
private
  { Private declarations }
  function URLEncode(const msg : String) : String;
  function GetMemoText(memo:TMemo):string;
public
  { Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
i: Integer;
ss: string;
begin
ss := GetMemoText(Memo1);
Memo1.Text :=ss;
Memo2.Clear;
for i := 1 to Length(ss) do
begin
  Memo2.Text := Memo2.Text + '%' + IntToHex(Ord(ss), 2);
end;
end;

function TForm1.URLEncode(const msg: String): String;
var
  I : Integer;
begin
  Result := '';
  for I := 1 to Length(msg) do begin
    if msg[I] = ' ' then
        Result := Result + '+'
    else if msg[I] in ['a'..'z', 'A'..'Z', '0'..'9'] then
        Result := Result + msg[I]
    else
        Result := Result + '%' + IntToHex(ord(msg[I]), 2);
  end;

end;

procedure TForm1.Button2Click(Sender: TObject);
var ss:string;
begin
Memo2.Clear;
ss :=GetMemoText(Memo1);
Memo1.Text :=ss;
Memo2.Text :=HTTPDecode(trim(ss));
end;

function TForm1.GetMemoText(memo: TMemo): string;
var i:integer;
begin
for i:=0 to memo.Lines.Count-1 do
begin
  Result :=Result + trim(memo.Lines);
end;
end;

end.


上一篇:一个多线程后台扫描的程序和源代码

下一篇:如何取得某些特殊文件夹路径

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
学习交流
热门图片

新闻热点

疑难解答

图片精选

网友关注