function UnicodeToString(UnicodeStr: string): string;
function SwapHL(value: string): string;
var
I : Integer;
begin
Result := '';
for i := 1 to Length(Value) do
if ((i mod 2) = 0) then
begin
Result := Result + Value;
Result := Result + Value[i - 1];
end;
end;
begin
Result := PWideChar(SwapHL(UnicodeStr));
end;
procedure UniCodeArrayToChar(iarr: array of char
var oarr: array of char);
var
Str : string;
L : Integer;
begin
L := Length(iarr);
SetLength(Str, L);
CopyMemory(@Str[1], @iarr[0], L);
Str := UnicodeToString(str);
CopyMemory(@oarr[0], @Str[1], L);
end;
。。。。
var
Q, r : array[0..9] of char;
begin
q[0] := #0;
q[1] := '9';
q[2] := #0;
q[3] := '1';
q[4] := #0;
q[5] := '8';
q[6] := '~';
q[7] := #207;
q[8] := 'm';
q[9] := 'N';
UniCodeArrayToChar(q, r);
showmessage(r);
end;