【问题标题】:german charset in delphidelphi中的德语字符集
【发布时间】:2011-05-16 10:24:22
【问题描述】:

嗨,我做了一个应用程序,带有德语翻译选项,但是当我测试它时,它显示 ß 为奇怪的符号,而且 ü 和其他人都变坏了。 有没有办法设置德语字符正确显示??

【问题讨论】:

  • Delphi 2007 并不能很好地支持国际化。如果升级到 Delphi XE 会容易得多。
  • ok 但真的没有办法做到这一点吗?除了升级吗?
  • 您可以尝试让应用程序使用 ANSI 字符串,但这是一个巨大的绑定,而且它在 Delphi 2009 及更高版本中开箱即用。
  • 确保每个控件都使用正确的 CHARSET 并确保每个 AnsiString 常量都使用正确的代码页进行编码,这需要大量的工作。我赞同 David 的观点:用 D2007 做这一切是没有意义的,升级到 Delphi XE 就可以获得完整的 Unicode 支持。无论哪种方式,您都需要投入大量工作,但是将这些精力投入到 Delphi 2007 几乎是徒劳的,因为一旦升级到 Unicode,它就毫无用处。而且升级到Unicode是不可避免的,你不能希望永远留在D2007上!
  • 当一个只懂英文的 Delphi 用户对接受 unicode 犹豫不决时,我并不感到惊讶,但当一个欧洲非英语使用者翻译了他/她的一个应用程序时,我几乎感到震惊不愿接受 unicode。

标签: delphi delphi-2007


【解决方案1】:

假设您对这些字符使用正确的代码,您必须确保 Windows 使用正确的代码页 850 或 Windows-1252。如果你想让我在德语 Windows 上测试一些东西...

【讨论】:

  • 好吧,我希望在不使用德语窗口的情况下显示字符,并且我已经将 DBText 设置为使用 ANSI_CHARSET 但这不起作用
  • 字符仍有可能没有正确编码,因为它们可能已在不同的代码页中输入。没有任何数据很难判断。
  • @deamon 我从存储过程中获取值,并且我的数据库的排序规则设置为 SQL_Latin1_General_CPI_CI_AS
  • 您是否尝试将 Non-Latin-1 符号存储到您的数据库中?
  • @Marijn,将您的数据库表设置为使用 UTF8,这将解决在字段中存储非 latin1 符号的问题。
猜你喜欢
  • 1970-01-01
  • 2012-09-07
  • 2015-10-17
  • 2013-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-08
  • 1970-01-01
相关资源
最近更新 更多