|
DELPHI7中字符串转为16进制以及16进制转为字符串,示例源码
在Delphi7中将字符串转换为十六进制表示可以通过使用AnsiString和IntToHex函数来实现。以下是一个示例代码,演示如何在Delphi7中将字符串转换为十六进制输出:
- var
- str: AnsiString;
- hexString: String;
- i: Integer;
- begin
- str := 'Hello, 你好';
- hexString := '';
- for i := 1 to Length(str) do
- begin
- hexString := hexString + IntToHex(Ord(str[i]), 2) + ' '; // 将每个字符转换为两位十六进制表示
- end;
- ShowMessage(hexString);
- end;
复制代码
在这个示例中,我们首先定义一个AnsiString类型的字符串str,然后使用一个循环遍历字符串中的每个字符。通过调用Ord函数获取字符的ASCII码,然后使用IntToHex函数将ASCII码转换为两位十六进制表示。最后将转换后的十六进制字符串输出到消息框中。
在Delphi 7中,您可以使用 `StrToInt` 函数将十六进制字符串转换为普通字符串。您可以将每一对十六进制字符转换为其整数表示,然后使用 `Chr` 函数将整数转换为相应的字符。以下是一个示例代码片段,演示如何在Delphi 7中将十六进制字符串转换为普通字符串:
- function HexToString(const HexStr: string): string;
- var
- HexValue: Integer;
- HexChar: string;
- ResultStr: string;
- i: Integer;
- begin
- ResultStr := '';
- for i := 1 to Length(HexStr) div 2 do
- begin
- HexChar := Copy(HexStr, (i - 1) * 2 + 1, 2);
- HexValue := StrToInt('
- 在这段代码中, `HexToString` 函数接受一个十六进制字符串作为输入,将每一对十六进制字符转换为相应的整数值,然后将整数值转换为相应的字符。该函数遍历十六进制字符串,处理每一对字符,并构建最终的普通字符串。
- + HexChar); // 将十六进制字符串转换为整数
- ResultStr := ResultStr + Chr(HexValue); // 将整数转换为字符并追加到结果字符串
- end;
- Result := ResultStr;
- end;
- // 示例用法
- var
- HexString: string;
- RegularString: string;
- begin
- HexString := '48656C6C6F2C20E4BDA0E5A5BD'; // 'Hello, 你好' 的十六进制表示
- RegularString := HexToString(HexString);
- ShowMessage(RegularString); // 输出: 'Hello, 你好'
- end;
复制代码
在这段代码中, `HexToString` 函数接受一个十六进制字符串作为输入,将每一对十六进制字符转换为相应的整数值,然后将整数值转换为相应的字符。该函数遍历十六进制字符串,处理每一对字符,并构建最终的普通字符串。
|
|