将 UTF16 转换为 Windows 1250
Convert UTF16 to Windows 1250
我有一个文件,我用 FileStream
打开它并修改了文本。这个的标准编码是UTF16。在此之后,我想将修改后的文件上传到某个地方,但必须是 Windows-1250 格式。
如何将 UTF16 编码转换为 Windows-1250 编码?
使用 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
。
我有一个文件,我用 FileStream
打开它并修改了文本。这个的标准编码是UTF16。在此之后,我想将修改后的文件上传到某个地方,但必须是 Windows-1250 格式。
如何将 UTF16 编码转换为 Windows-1250 编码?
使用 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
。