Delphi 将Utf8转换为Unicode

Delphi 将Utf8转换为Unicode,delphi,delphi-2009,Delphi,Delphi 2009,我有一个文本文件。我应该把它转换成Utf8。转换后,文件中的所有数字都将转换为问号。例如,1380被转换为4个问号,如下所示:“??”。 我使用的是Delphi2009 这是我的转换代码: RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName,TEncoding.UTF8); 如何更正此转换 如果文件是UTF-16LE(“Unicode”)格式,则应使用TEncoding.Unicode。 或者,在将文件加载到RichEdit之前,您应该将其转换为

我有一个文本文件。我应该把它转换成Utf8。转换后,文件中的所有数字都将转换为问号。例如,1380被转换为4个问号,如下所示:“??”。 我使用的是Delphi2009

这是我的转换代码:

RichEdit1.Lines.LoadFromFile(OpenDialog1.FileName,TEncoding.UTF8);

如何更正此转换

如果文件是UTF-16LE(“Unicode”)格式,则应使用
TEncoding.Unicode

或者,在将文件加载到RichEdit之前,您应该将其转换为UTF-8。

如果您的文件是UTF-16LE(“Unicode”)格式,您应该使用
TEncoding.Unicode

或者,在将文件加载到RichEdit之前,您应该将其转换为UTF-8。

这不是“转换”。您告诉
RichEdit.Lines
它应该使用UTF8编码的文本文件,但显然没有提供。您需要使用正确的编码打开文件(您没有提到),将其转换为UTF8,然后将其分配给
RichEdit.Lines
属性。由于您没有提到文本文件的实际编码方式,因此我无法对如何将其转换为UTF8提出任何建议。您是否可以编辑您的问题,以提供有关磁盘上文本文件的实际编码的缺失信息?谢谢。现有文件是unicode格式的。我想在我的应用程序中打开文件,用文件中的一些字符填写一些备忘录和richedit。我的文件有英文字符、波斯语字符和一些带有符号的数值。这不是“转换”。您告诉
RichEdit.Lines
它应该使用UTF8编码的文本文件,但显然没有提供。您需要使用正确的编码打开文件(您没有提到),将其转换为UTF8,然后将其分配给
RichEdit.Lines
属性。由于您没有提到文本文件的实际编码方式,因此我无法对如何将其转换为UTF8提出任何建议。您是否可以编辑您的问题,以提供有关磁盘上文本文件的实际编码的缺失信息?谢谢。现有文件是unicode格式的。我想在我的应用程序中打开文件,用文件中的一些字符填写一些备忘录和richedit。我的文件有英文字符、波斯语字符和一些带有符号的数值。