如题,给定起始16进制数即EDIT1.TEXT,结束16进制数即EDIT2.TEXT
需要把从EDIT1.TEXT到EDIT2.TEXT的所有数以字符串形式存到SQL中
请问该如何转呢?

解决方案 »

  1.   

    你可以将16进制字符串转换成数字然后处理!!!使用Format函数进行转换!!!Format( '%x', [ 'AAAAFFF' ] );
    然后使用循环进行你需要的处理!!!以下是一个简单的例子!!!Var
      X : Integer;
      Y : Integer;
      I : Integer;
     ....
       X := StrToInt( Format( '%x', [ EDIT1.TEXT ] ) );
       Y := StrToInt( Format( '%x', [ EDIT2.TEXT ] ) );
       For I := X To Y Do
       Begin
             写数据库函数( I );
       End;
      

  2.   

    如何让10进制形式的字符串变成16进制形式的字符串呢?这个是关键,我在SQL中把这个16进制的字符串定义为CHAR型的,所以INSERT时,需是个字符串
      

  3.   

    StrToInt先转换成为数字,然后IntToHex转换成为16进制字符串。
      

  4.   

    inttohex() 10进制-》16进制如inttohex(192,2)<=>'C0' strtoint('$'+'C0')<=>192  //16进制->10进制