Delphi 2010 宽函数与字符串函数

发布于 2024-08-30 03:29:18 字数 336 浏览 6 评论 0原文

我们目前正在将 Delphi 2007 项目转换为 Delphi 2010。我们已经在使用 Unicode(通过 WideStrings 和 TNT Unicode Controls)。

我原本希望将所有 Wide 函数(例如 WideUpperCase)替换为它们的等效函数(例如 UpperCase),但它们的工作方式不同。例如,WideUpperCase 的工作方式与 UpperCase 不同。 WideUpperCase 正确地将 Campañas 大写,但 UpperCase 将 ñ 保留为小写。

还有其他我应该注意的差异吗?例如,WideFormat 和 Format 的工作方式相同吗?

谢谢

We're currently converting a Delphi 2007 project to Delphi 2010. We were already using Unicode (via WideStrings and TNT Unicode Controls).

I was expecting to replace all Wide functions, e.g. WideUpperCase, with their equivalent, e.g. UpperCase, but they do not work the same way. For example, WideUpperCase works differently from UpperCase. WideUpperCase correctly uppercases Campañas, but UpperCase leaves the ñ in lower case.

Are there any other differences that I should be aware of? e.g. do WideFormat and Format work the same?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

梦萦几度 2024-09-06 03:29:18

您应该使用 ToUpper 函数从字符单元转换为大写 unicode 字符串。或者,如果您需要支持非 unicode 和 unicode Delphi 版本的通用代码库,您可以使用 AnsiUpperCase - AnsiUpperCase 是 Delphi 2007 及更早版本的 Ansi 函数,以及 Delphi 2009 及更高版本的 unicode 函数。

You should use ToUpper function from Character unit to uppercase unicode strings. Or else you can use AnsiUpperCase if you need to support the common codebase for non-unicode and unicode Delphi versions - AnsiUpperCase is Ansi function for Delphi 2007 and prior, and unicode function for Delphi 2009 and above.

能怎样 2024-09-06 03:29:18

命名确实很糟糕(由于与旧版本保持兼容)。我建议您阅读您可能想要使用的每个字符串函数的 cos 并检查它是否适用于 Unicode。

The naming is really bad (due to keeping compat with older versions). I suggest you read the cos for each string function you might want to use and check if it works with Unicode or not.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文