3

Bytes2つを組み合わせることは可能WideCharですか?もしそうなら、どのように?
たとえば、バイナリの文字「ē」は00010011=1900000001= 1、または275一緒です。

var
  WChar: WideChar;
begin
  WChar := WideChar(275); // Result is "ē"


var
  B1, B2: Byte;
  WChar: WideChar;
begin
  B1 := 19;
  B2 := 1;
  WChar := CombineBytesToWideChar(B1, B2); // ???

WideCharDelphiで2バイトから取得するにはどうすればよいですか?

4

2 に答える 2

8
WChar := WideChar(MakeWord(B1, B2));
于 2013-01-02T11:23:49.070 に答える
3

タイプを作成してキャストできるはずです。

type
  DoubleByte = packed record
    B1: Byte;
    B2: Byte;
  end;

var
  DB: DoubleByte;
  WC: WideChar;
begin
  DB.B1 := 19;
  DB.B2 := 1;

  WC = WideChar(DB);
end;

キャストに失敗した場合は、Move()代わりにメモリをコピーするだけで使用できます。

于 2013-01-02T11:20:00.370 に答える