我可以将整数值转换为 ANSISTRING 类型的十六进制值吗?
Can i convert an interger value into a hexadecimal value of type ANSISTRING?
在 Delphi 2010 年,有一个函数 IntToHex()
可以将 integer
值转换为 hexadecimal
类型 UNICODE string
。
我需要的是一个将 integer
转换为 AnsiString
类型的 hexadecimal
的函数。
转换会起作用,因为十六进制始终是 ASCII 字符:
MyHexString := AnsiString(IntToHex(1234, 4));
如果你需要一个函数,写一个包装器:
function IntToHexAnsi(Value: Integer; Digits: Integer): AnsiString;
begin
Result := AnsiString(IntToHex(Value, Digits));
end;
您不需要做任何特别的事情。只需将 AnsiString 类型的变量分配给 IntToHex 函数的结果——编译器将负责将 UnicodeString/STRING 类型转换为 AnsiString:
VAR
AnsiStr : AnsiString;
BEGIN
AnsiStr:=IntToHex(12345678,8);
END;
在 Delphi 2010 年,有一个函数 IntToHex()
可以将 integer
值转换为 hexadecimal
类型 UNICODE string
。
我需要的是一个将 integer
转换为 AnsiString
类型的 hexadecimal
的函数。
转换会起作用,因为十六进制始终是 ASCII 字符:
MyHexString := AnsiString(IntToHex(1234, 4));
如果你需要一个函数,写一个包装器:
function IntToHexAnsi(Value: Integer; Digits: Integer): AnsiString;
begin
Result := AnsiString(IntToHex(Value, Digits));
end;
您不需要做任何特别的事情。只需将 AnsiString 类型的变量分配给 IntToHex 函数的结果——编译器将负责将 UnicodeString/STRING 类型转换为 AnsiString:
VAR
AnsiStr : AnsiString;
BEGIN
AnsiStr:=IntToHex(12345678,8);
END;