我有一些十六进制格式的数据(以字节存储),我需要将其转换为字符串,数据应该是这样的
13 61 23 45 67 8F FF
和预期输出
13612345678FFF
我知道 Chr() 或 IntToStr() 函数将不起作用,因为该数据不是实际的十六进制代码,而是以十六进制格式设置的字符串/数字,所以有人对此有一些建议吗?
最佳答案
这用于将动态字节数组转换为十六进制字符串:
function BytesToHex(aSource: TBytes): string;
begin
SetLength(Result, Length(aSource) * 2);
if Length(aSource) > 0 then
BinToHex(aSource[0], PChar(Result), Length(aSource));
end;
如果您的源字节不在动态数组中,则必须稍微调整代码,但它应该让您大致了解如何执行此操作。
关于delphi - 将十六进制格式的数据转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5189460/