Function URLEncoding(vstrIn)
strReturn = ""
For i = 1 To Len(vstrIn)
ThisChr = Mid(vStrIn,i,1)
If Abs(Asc(ThisChr)) < &HFF Then
strReturn = strReturn & ThisChr
Else
innerCode = Asc(ThisChr)
If innerCode < 0 Then
innerCode = innerCode + &H10000
End If
Hight8 = (innerCode And &HFF00)\ &HFF
Low8 = innerCode And &HFF
strReturn = strReturn & "%" & Hex(Hight8) & "%" & Hex(Low8)
End If
Next
URLEncoding = strReturn
End Function
Function bytes2BSTR(vIn)
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function 谁能将上面的代码转换成delphi的!高手快出手
strReturn = ""
For i = 1 To Len(vstrIn)
ThisChr = Mid(vStrIn,i,1)
If Abs(Asc(ThisChr)) < &HFF Then
strReturn = strReturn & ThisChr
Else
innerCode = Asc(ThisChr)
If innerCode < 0 Then
innerCode = innerCode + &H10000
End If
Hight8 = (innerCode And &HFF00)\ &HFF
Low8 = innerCode And &HFF
strReturn = strReturn & "%" & Hex(Hight8) & "%" & Hex(Low8)
End If
Next
URLEncoding = strReturn
End Function
Function bytes2BSTR(vIn)
strReturn = ""
For i = 1 To LenB(vIn)
ThisCharCode = AscB(MidB(vIn,i,1))
If ThisCharCode < &H80 Then
strReturn = strReturn & Chr(ThisCharCode)
Else
NextCharCode = AscB(MidB(vIn,i+1,1))
strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
i = i + 1
End If
Next
bytes2BSTR = strReturn
End Function 谁能将上面的代码转换成delphi的!高手快出手
解决方案 »
- 问个关于线程进度条的问题,谢谢帮忙!!!
- 各位大侠,小弟刚学delphi 问个问题 ,救急啊!!谢谢(关于分班的问题)
- memo问题,急,在线等!!!
- 如何获得 SQL Server 的安装路径。多谢
- 有关Treelist控件的一个问题
- 请教如何使用datetimepicker
- 请教接口与类与类接口与COM的概念??
- 请问如何在Access中插入二进制数据,用ADO来实现
- 如何运行空间里的ASP文件
- 为什么Delphi中,组件面板上看不见有关组件的提示信息。
- 请教ClientDataSet的用法
- fastReoirt的问题,如何让fastreport预览的时候显示全部,点打印的时候让部分控件不打印
IdURI.URLEncode(xxxxx)
strReturn = strReturn & "%" & Hex(Hight8) & "%" Hex(Low8)
这个怎么改
to
hellolongbin(一个人[终不似,少年游])
var
Low8,Hight8,innerCode,i:integer;
strReturn:string;
ThisChr:char;
begin
strReturn := ''; For i := 1 To Length(vstrIn) do
begin
ThisChr := vstrIn[i]; If Abs(ord(ThisChr)) < $FF Then
strReturn := strReturn + ThisChr
Else begin
innerCode := ord(ThisChr);
If innerCode < 0 Then innerCode := innerCode + $10000;
Hight8 := (innerCode And $FF00) div $FF;
Low8 := innerCode And $FF;
strReturn := strReturn + '%' + inttohex(Hight8,1) + '%' + inttohex(Low8,1);
End;
end; URLEncoding := strReturn;
end;