1

我有一个文件,我用它打开FileStream并修改文本。它的标准编码是 UTF16。在此之后,我想将修改后的文件上传到某个地方,但必须是 Windows-1250 格式。

如何将 UTF16 转换为 Windows-1250 编码?

4

1 回答 1

4

用于TEncoding以特定编码对字符串进行编码。

var
  Ansi1250Enc: TEncoding;
....
Ansi1250Enc := TEncoding.GetEncoding(1250);

然后您可以使用GetBytes将字符串编码为字节数组:

var
  EncodedBytes: TBytes;
  str: string;
....
str := ...; // get your text into a string variable by whatever means
EncodedBytes := Ansi1250Enc.GetBytes(str);

或者,如果您将文本存储在字符串列表中,您可以像这样保存它:

Strings.SaveToFile(FileName, Ansi1250Enc);

完成后不要忘记销毁Ansi1250Enc它。

于 2015-11-04T09:56:29.117 回答