我有一个在不同地方使用°(度数符号,ANSI#176)的应用程序,我无法理解它显示的不同方式 - 有些是正确的,但有些看起来好像已转换为UTF-8然后返回到ANSI。一般来说,它在TLabels中看起来没问题,但TEdits看起来没问题,偶尔也可以在TRichEdit中使用。在XE5中重新编译没有明显的区别。所以我的问题是 - 如何让#176在西方和东方的OS上一致出现。
答案 0 :(得分:2)
你的整个方法都存在缺陷。您所指的字符,#176是某些ANSI代码页中的度数符号,但不是全部。在使用双字节字符集的远东语言环境中,#176本身毫无意义。因为它是双字节字符的一部分。如果您希望应用程序在所有语言环境中都能正常运行,则需要使用Unicode文本对其进行编码。
您声称切换到XE5没有帮助。显然你做得不对。 XE5对Unicode提供全面而全面的支持。如果你正确使用它,它将解决你的问题。