gpt4 book ai didi

delphi - 使用 Unicode 数据从文件加载

转载 作者:行者123 更新时间:2023-12-03 14:45:32 28 4
gpt4 key购买 nike

我的输入文件(f) 有一些无法正确读取的 Unicode(瑞典语)。

这两种方法都不起作用,尽管它们给出了不同的结果:

  LoadFromFile(f);

  LoadFromFile(f,TEncoding.GetEncoding(GetOEMCP));

我使用的是 Delphi XE

如何从文件加载一些 Unicode 数据...以及随后如何保存到文件?谢谢

最佳答案

为了加载 Unicode 文本文件,您需要知道它的编码。如果文件有字节顺序标记 (BOM),那么您只需调用 LoadFromFile(FileName),RTL 将使用 BOM 来确定编码。

如果文件没有 BOM,那么您需要显式指定编码,例如

LoadFromFile(FileName, TEncoding.UTF8);
LoadFromFile(FileName, TEncoding.Unicode);//UTF-16 LE
LoadFromFile(FileName, TEncoding.BigEndianUnicode);//UTF-16 BE

出于某种我不知道的原因,没有内置对 UTF-32 的支持,但如果您有这样的文件,那么添加一个 TEncoding 实例来处理该文件就很容易了.

关于delphi - 使用 Unicode 数据从文件加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10565303/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com