下面函数将英文字符变成Unicode的编码,换比如字符'12',经过下面转换成为: 3119 ,那么反过来函数如何写:将 3119 还原成 12 ?只要英文的,中文已经写出.
function EncodeEString(var s:String):String;
var
i,j,len:Integer;
cur:Integer;
t:String;
begin
Result:='';
len:=Length(s);
i:=1;j:=0;
while i<=len do
begin
if i<len then
cur:=(ord(s[i]) shr j) or ((ord(s[i+1]) shl (7-j)) and $ff)
else
cur:=(ord(s[i]) shr j) and $7f;
FmtStr(t,'%2.2X',[cur]);
Result:=Result+t;
inc(i);
j:=(j+1) mod 7;
if j=0 then inc(i);
end;
end;
function EncodeEString(var s:String):String;
var
i,j,len:Integer;
cur:Integer;
t:String;
begin
Result:='';
len:=Length(s);
i:=1;j:=0;
while i<=len do
begin
if i<len then
cur:=(ord(s[i]) shr j) or ((ord(s[i+1]) shl (7-j)) and $ff)
else
cur:=(ord(s[i]) shr j) and $7f;
FmtStr(t,'%2.2X',[cur]);
Result:=Result+t;
inc(i);
j:=(j+1) mod 7;
if j=0 then inc(i);
end;
end;
解决方案 »
- delphi 2009 SQLStoredProc执行错误说没参数?
- delphi中怎样才能取得 SQLSever 2000中text 字段类型得值呢?
- 紧急问题求救!!!!在线等!
- 第一次提问:为什么会这样?
- [DBNMPNTW]ConnetionOpen(CreateFile())
- 求infopower 4000 and 1stclass 4000序列号
- 我的Indy控件的问题。
- 有没有人知道什么是“线程安全”?????
- 寻Delphi 6的资料
- 谁能告诉我如何用Windows Internet共享实现家庭电脑共享Internet?
- 请问有没有将整数值转换成日期的函数
- 如何将*.swf的文件转换为*.gif的文件呢?
Function MyTenToHex(SStr:String):String;
var
i:Integer;
TStr:String;
begin
for i:=1 to Length(SStr) do
TStr:=TStr+IntToHex(Ord(Sstr[i]),2);
Result:=TStr;
end;Function MyHexToTen(SStr:String):String;
var
i:Integer;
TStr:String;
begin
for i:=1 to Length(SStr) div 2 do
TStr:=TStr+Chr(Strtoint('$'+Sstr[2*i-1]+Sstr[2*i])); Result:=TStr;
end;