CHAR和HEX互相转换

Function  StrToHexStr( Const  S: String ): String ; //字符串转换成16进制字符串(方法一)
Var
   I: Integer ;
Begin
   For  I := 1  To  Length(S) Do
   Begin
     If  I = 1  Then
       Result := IntToHex(Ord(S[ 1 ]), 2 )
     Else  Result := Result + ' '  + IntToHex(Ord(S[I]), 2 );
   End ;
End ;
 
function  strToHexStr(str: string ): string ; //字符串转换成16进制字符串(方法二) 
var
c: char
ss: string
begin
while  str<> ''  do  begin
c:=str[ 1 ]; 
ss:=ss+format( '%0x' ,[ord(c)]); 
delete(str, 1 , 1 ); 
end
strtohexStr:= ss; 
end
 
Function  HexStrToStr( Const  S: String ): String ; //16进制字符串转换成字符串
Var
   t: Integer ;
   ts: String ;
   M, Code: Integer ;
Begin
   t := 1 ;
   Result := '' ;
   While  t <= Length(S) Do
   Begin
     While  (t <= Length(S)) And  ( Not  (S[t] In  [ '0' .. '9' , 'A' .. 'F' , 'a' .. 'f' ])) Do
       Inc(t);
     If  (t + 1  > Length(S)) Or  ( Not  (S[t + 1 ] In  [ '0' .. '9' , 'A' .. 'F' , 'a' .. 'f' ])) Then
       ts := '$'  + S[t]
     Else
       ts := '$'  + S[t] + S[t + 1 ];
     Val (ts, M, Code);
     If  Code = 0  Then
       Result := Result + Chr(M);
     Inc(t, 2 );
   End ;
End ;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值