首先,我很抱歉无法更好地描述我的问题。

我所拥有的是字号65025,即0xFE01或
11111110 00000001二进制。我想将值传递给wstr Word => 11111110 00000001。

我发现使用类型转换不起作用。

还有一个问题。如果我想添加另一个数字,例如10000 => 0x03E8,该怎么做。因此,在结果中,宽字符串应引用值0xFE01 0x03E8。

然后,如何从宽字符串到单词返回检索相同的数字?

var wstr: Widestring;
wo: Word;
begin
  wo := 65025;
  wstr := Widestring(wo);
  wo := 10000;
  wstr := wstr + Widestring(wo);
end


编辑:

我正在给出我想要的另一个更简单的示例...如果我的字值49等于ASCII值1,则我希望wstr为'1',以二进制形式表示b00110001。我想将单词编号中的位复制到字符串中。

最佳答案

您似乎想将一个单词解释为UTF-16代码单元。在Unicode Delphi中,您将使用Chr()函数。但是我怀疑您使用的是ANSI Delphi。在这种情况下,将WideChar强制转换为WideChar(wo)

09-26 11:13