阅读文本文件;用excel打开

时间:2014-02-02 11:28:21

标签: excel delphi utf-8 delphi-2007

使用Delphi 2007&试图用希腊字符&读取txt文件用Excel打开,我没有获得希腊字符但符号...任何帮助?

使用此代码

创建文本文件
CSVSTRList.SaveToFile('c:\test\xxx2.txt');

其中CSVSTRList是TStringList。

1 个答案:

答案 0 :(得分:3)

在上一个问题中查看您的代码,您似乎正在查看股票TStringList并致电SaveToFile。将文本编码为ANSI。您的希腊字符不能编码为ANSI。

您想使用Unicode编码导出文本。例如,在现代Delphi中,您将使用:

StringList.SaveToFile(FileName, Encoding.Unicode);

表示UTF-16或

StringList.SaveToFile(FileName, Encoding.UTF8);

表示UTF-8。

我希望Excel能够理解这些编码中的任何一种。

由于您使用的是非Unicode Delphi,因此事情变得更加困难。您需要将所有代码(每一个字符串处理)都更改为Unicode。因此,您不能再使用股票字符串列表,例如,因为它包含8位ANSI字符串。使用传统Delphi执行此操作的最简单方法是使用TNT Unicode library

或者你可以采取转向Unicode Delphi的步骤。如果您关心国际文本,那么这是最明智的选择。