delphi类型转换 asci与char

摘要:
ord(char)=ascchr(asc)=charinttohex(int,1)=十六进制(字符串。两位十六进制转换为十进制:functionHexToInt(十六进制:字符串):整数;varx:数组[0..1]
ord(char) = asc
chr(asc) = char
inttohex(int,1) = hex (string)
 
使用AStr[i]取AStr:String中的第i个字符时需要注意的事项:
这里i表示第i个字符,并不是通常的0表示第1个,i表示第i+1个。
 
二位的16进制转换为10进制:
function HexToInt(hex : string):integer;
var x : array [0..1] of integer;
    i : integer;
    s : string;
begin
  for I := 0 to 1 do
  begin
    try
      if i = 0 then
        s := copy(hex,1,1)
      else    
        s := copy(hex,2,1);
      x[i] := StrToInt(s);
    except
      if s = 'A' then x[i] := 10;
      if s = 'B' then x[i] := 11;
      if s = 'C' then x[i] := 12;
      if s = 'D' then x[i] := 13;
      if s = 'E' then x[i] := 14;
      if s = 'F' then x[i] := 15;
    end;
  end;
  Result := x[0] * 16 + x[1];
end;  
 
优化,16 to 10
function HexToInt(Hex : String) : int64;
var AStr, AHex : String;
    HexLen, i, AH : integer;
    Power : integer;
begin
  AHex := AnsiUpperCase(Hex);
  HexLen := Length(AHex);
  Result := 0;
  Power := 1;
  for I := 0 to HexLen - 1 do
  begin
    AStr := Copy(AHex,HexLen - i);    //从后往前取
    AH := Ord(AStr[1]) - 48;
    if (AH >= 17) and (AH <= 22) then AH := AH -7
    else if (AH < 0) or (AH > 22) or ((AH > 9) and (AH < 17)) then AH := null;
    if i <> 0 then Power := Power * 16;
    Result := Result + AH * Power;
  end;
end;
 

原文来自: http://blog.chinaunix.net/uid/30148519.html

http://blog.chinaunix.net/uid-30148519-id-4850824.html

免责声明:文章转载自《delphi类型转换 asci与char》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Mysql建表+创建索引vmware中鼠标在部分区域不能使用下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【Hive学习之二】Hive SQL

环境虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4FTP:Xftp4jdk8hadoop-3.1.1apache-hive-3.1.1 参考:官网hive操作手册 一、DDL 1、数据类型 data_type : primitive_type |array_type |map_type...

Delphi中Owner和Parent的区别

Delphi中Owner和Parent的区别Owner为创建者,Parent为容器 他们的类型不同,Owner为TComponent(元件),Parent为TWinControl(窗体控件) Parent属性是指构件的包容器,构件只能在此范围内显示和移动。举例子如下:(1)在Form1的窗体上,放一个Panel1,并将Panel1拉大,(2)在Panel1...

C#获取web.config配置文件内容

使用ConfigurationManager读取web.config配置文件字段,主要用来读取数据库连接字符串。 ConfigurationManager提供对客户端应用程序配置文件的访问。 其有两个属性 1.ConnectionStrings 获取当前应用程序默认配置的 ConnectionStringsSection 数据。 方法一: string...

Dapper解析嵌套的多层实体类

在作项目的时候,我会将一些不涉及查询的字段,形成JSON统一存放在一个字段中,向下面这样的来建实体类, public class WechatModel { public string wechatid { get; set; } public WxMpModel wxmpinfo { get; set; } } p...

Java中Map用法详解

原文地址http://blog.csdn.net/guomutian911/article/details/45771621 原文地址http://blog.csdn.net/sunny243788557/article/details/52806724 Map以按键/数值对的形式存储数据,这里要特别说明(Map.Entry,是Map的内部类,它用来描述M...

vb.net的数据类型

一,Numeric(数值型)数据类型 Integer 整型 4字节 变量存储为32位整数型,范围从-2147483.648至2147483.648 Long 长整型 8字节 变量存储为64位整数型,范围从-9223372036854775.808至9223372036854775.807 Short 短整型 2字节 变量存储为16位整数型,范围...