一组十六进制字符串,如: CE D2 B5 C4 CA D6 BB FA BA C5 CE AA A3 BA 31 33 38 36 33 39 39 38 35 36 32 A3 AC C4 E3 B5 C4 CA C7 B6 E0 C9 D9 A3 BF怎样把这段字十六进制字符串转化为汉字
解决方案 »
- 高分求教:关于窗体上画网格线的问题
- WebBrowser复制图片到剪贴板问题?急,,急,,,在线等!!!
- 请问如何用image实现存取图片(sql数据库),除了dbimage外,这种方法是否可行?
- 怎样在字符串里面添加回车换行等特殊字符?
- 夜猫,问你一个问题
- 怎样把颜色保存到ACCESS数据库里?
- 关于access violation异常
- 送掉所有的分数(来就有分):不知各位大哥用Delphi在单机上做数据库程序时,都用的是哪一种数据库格式?我原来用paradox,但是好容易坏掉,数据经常丢失
- l_jia()明天我等你(下午),我给你分,你给我程序
- 关于TlistView 的问题!
- 急!IO错误!
- SQL查詢
mHex: string //十六进制字符串
): string; //返回处理后的字符串
var
I: Integer;
begin
Result := '';
mHex := StringReplace(mHex, #32, '', [rfReplaceAll]);
for I := 1 to Length(mHex) div 2 do
Result := Result + Chr(StrToIntDef('$' + Copy(mHex, I * 2 - 1, 2), 0));
end; { HexToStr }function StrToHex( //字符串处理成十六进制字符串
mStr: string; //字符串
mSpace: Boolean = False //是否用空格分开
): string; //返回处理后的十六进制字符串
const
cSpaceStr: array[Boolean] of string = ('', #32);
var
I: Integer;
begin
Result := '';
for I := 1 to Length(mStr) do
Result := Format('%s%s%.2x', [Result, cSpaceStr[mSpace], Ord(mStr[I])]);
if mSpace then Delete(Result, 1, 1);
end; { StrToHex }
function uhfHexToInt(const Value: AnsiString): Cardinal; //将十六进制字符串转化为整数
var
i: Integer;
s, sTemp: AnsiString;
begin
Result := 0;
s := '';
for i := 1 to Length(Value) do
begin
sTemp := uhfHexCharToBin(Value[i]);
if sTemp = '' then Exit;
s := s + sTemp;
end;
Result := uhfBinToInt(s);
end;=========================================================function HexStrToInt(str: String): integer; //转换16进制字符串
var
i: integer;
len: integer;
begin
str := upperCase(str);
len := length(str);
for i := len downto 1 do
result := Trunc(power(16, len - i)) * chValue(str[i]);
end;function StrToInt2(str: String): integer; //转换
begin
str := Trim(str);
if (LastDelimiter('Hh', str) <> 0) and (LastDelimiter('Hh', str) <> Length(str)) then //非法格式
raise EConvertError.Create('格式不对')
else if LastDelimiter('Hh', str) = Length(str) then //Hex
result := HexStrToInt(Copy(str, 1, Length(str) -1))
else //Dec
result := StrToInt(str);
end;