由于Delphi已经对ASP中的对象进行了很好的封装,所以即使在Delphi环境下,也可以方便地调用它,就象在ASP中一样,例如Request.TotalBytes。首先将原始表单数据读入到一个OleViarians类型的pvar中,然后通过一个循环,将它转换为Delphi中的string格式,并存放在FContentData中。
接下来,通过查找换行符,解析出分隔符的内容和长度。然后在一个循环中,用AnalyFormData成员函数一一解析出每个域。初始化工作就这样完成了。
再看AnalyFormData函数的实现:
procedure Tupfile.AnalyFormData(content: string);
var
pos1,pos2:integer;
FormName,FormValue:string;
isFile:boolean;
begin
isFile := false;
pos1 := instr(’name="’,content,1)+6;
pos2 := instr(’"’,content,pos1);
FormName := copy(content,pos1,pos2-pos1);
//检查是否文件
pos1 := instr(’filename="’,content,pos2+1);
if pos1 <> 0 then
begin
isFile := true;
pos1 := pos1 + 10;
文章来源于领测软件测试网 https://www.ltesting.net/