无论用户设置如何,Delphi Unicode都会确定文化

时间:2010-12-06 10:12:52

标签: delphi unicode localization cultureinfo delphi-xe

我正在考虑将Delphi2006项目升级到Delphi XE。 其效果将是使用Unicode而不是ANSI。

在.net-framework中我可以在Thread上使用CultureInfo来确定应用程序的格式,而不管用户设置如何(应用程序还不够成熟以支持所有格式(遗留,遗留,遗留)。还有目前不打算这样做。) 让应用程序/线程确定格式是我希望能够使用Delphi做的事情。如何实现这一目标?

1 个答案:

答案 0 :(得分:1)

首先,请在:

之间进行区分(来源:维基百科)
  1. 国际化(i18n)是设计软件应用程序的过程,以便它可以适应各种语言和区域,而无需进行工程更改。
  2. 本地化(L10)是通过添加特定于语言环境的组件和翻译文本来调整特定区域或语言的国际化软件的过程。
  3. 对于i18n,您将使用Delphi ITE/ETM GetText或其他免费或付费工具(例如ours)。

    但你的观点是关于L10,即本地化。有some documentation in the EMB site,但对我来说听起来有点令人困惑的是i18n和L10,即使文章中引用了这两个定义。

    自Delphi的第一个版本以来,您在SysUtils单元中拥有专用的函数和变量:

    • TFormatSettings是一种记录类型,可用于检索L10设置(仅存在于较新的Delphi版本上);
    • FormatSettings这是一个全局变量,可用于检索(或设置)当前的默认格式设置;
    • FormatDateTime,可用于强制执行其他格式设置;
    • Format是形成一些数据的主要功能(使用货币或小数到文本设置),并且有一个支持TFormatSettings的重载版本。
    • 您可以使用TFormatSettings.Create(在较新的Delphi上),或者使用填充一些全局变量的旧的(已弃用的)GetLocaleFormatSettings