Delphi中实现HexToStr函数和StrToHex函数


本文整理自网络,侵删。

 
function TransChar(AChar: Char): Integer;
begin
  if AChar in ['0'..'9'] then
  Result := Ord(AChar) - Ord('0')
  else
  Result := 10 + Ord(AChar) - Ord('A');
end;
function StrToHex(AStr: string): string;
var
  I ,Len: Integer;
  s:char;
begin
  len:=length(AStr);
  Result:='';
  for i:=1 to len  do
  begin
    s:=AStr[i];
    Result:=Result +' '+IntToHex(Ord(s),2); //将字符串转化为16进制字符串,
                                            //并以空格间隔。
  end;
  Delete(Result,1,1); //删去字符串中第一个空格
end;
function HexToStr(AStr: string): string;
var
  I,len : Integer;
  CharValue: Word;
  Tmp:string;
  s:char;
begin
  Tmp:='';
  len:=length(Astr);
  for i:=1 to len  do
  begin
    s:=Astr[i];
    if s <> ' ' then Tmp:=Tmp+ string(s);
  end;
  Result := '';
  For I := 1 to Trunc(Length(Tmp)/2) do
  begin
    Result := Result + ' ';
    CharValue := TransChar(Tmp[2*I-1])*16 + TransChar(Tmp[2*I]);
    if (charvalue < 32) or (charvalue > 126)  then Result[I] := '.'   //非可见字符填充
    else Result[I] := Char(CharValue);
  end;
end;

来源:https://www.cnblogs.com/tc310/p/4587287.html

相关阅读 >>

Delphi 获取随机汉字的函数

Delphi高亮显示trichedit当前行

Delphi hmac256

Delphi 防止程序重复执行的单元

Delphi程序常用的公共代码

Delphi(更改图标)

Delphi如何在一个窗体中嵌入另一个窗体

Delphi vclzip压缩文件夹

Delphi判断文件夹(目录)是否存在,不存在就创建的办法

Delphi 线程中修改主窗体的控件内容

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...