0
votes

I need to make some translations from/into the French/Dutch/German languages using Delphi 2006 (without any third party units/components).

These 3 languages have the code page 1252. Our database is UTF-8 compliant, so at this moment I rely on the fact that all the values from the tables are UTF-8. Should I be confident on this assuming? This will work well, or I should worry about UTF-8 -> code page 1252 differences, if there are any? I didn't understand the difference between UTF-8 and code pages(for example I understood that the first 127 bytes are the same, and begging with the 128th byte are different).

Second, I need to make a search on some fields. Can I rely on ANSIUpperCase function from D2006? Or should I do a custom function, to treat each special character?

LE: data is stored in UTF-8 format.

Thanks in advance!

1
I would like your question better if you asked about one subject per question. It seems useless to the whole world, except you, because you have combined so much unrelated stuff into one question. Everyone benefits if you break your questions up. Also, since your DB is already UTF8, I wonder why you would keep using an ANSI delphi version? XE/XE2 are a natural upgrade. Just a thought.Warren P

1 Answers

5
votes
  1. The database being UTF8-compliant doesn't mean the data is actually stored in UTF8. E.g. in Firebird (which is UTF8-compliant) you can declare tables using ANSI character sets.
  2. You'll need to convert from UTF8 to ANSI 1252 and vice versa. E.g. with UTF8Encode and UTF8Decode routines.