Delphi 2006使用单个ansi代码页从/转换为法语/荷兰语/德语

RBA*_*RBA 0 delphi utf-8 codepages delphi-2006

我需要使用Delphi 2006(没有任何第三方单元/组件)从法语/荷兰语/德语进行翻译.

这3种语言的代码页为1252.我们的数据库符合UTF-8标准,所以此时我依赖于表中所有值都是UTF-8的事实.我应该对此假设有信心吗?这样会运行良好,或者我应该担心UTF-8 - >代码页1252的差异,如果有的话?我不明白UTF-8和代码页之间的区别(例如,我理解前127个字节是相同的,并且与第128个字节的请求是不同的).

其次,我需要在某些领域进行搜索.我可以依赖D2006的ANSIUpperCase功能吗?或者我应该做一个自定义功能,来对待每个特殊角色?

LE:数据以UTF-8格式存储.

提前致谢!

Ond*_*lle 5

  1. 符合UTF8的数据库并不意味着数据实际存储在UTF8中.例如,在Firebird(符合UTF8)中,您可以使用ANSI字符集声明表.
  2. 您需要将UTF8转换为ANSI 1252,反之亦然.例如,UTF8EncodeUTF8Decode例程.