On Mon, 30 Dec 2013 19:19:20 +0200 Juha Manninen <juha.mannine...@gmail.com> wrote:
> On Mon, Dec 30, 2013 at 2:35 PM, Marcos Douglas <m...@delfire.net> wrote: > > Is possible to know what string type of a variable (AnsiString, > > UTF8String, RawByteString, etc)? > > When UTF-8 encoded string is stored in AnsiString (as in LCL), this > test should tell you if it actually is UTF-8 string: > if Length(s) <> UTF8Length(s) then > begin > // UTF-8 > end; This is wrong. There is no test for UTF-8 versus 8-bit windows codepage. A good heuristic is this: if FindInvalidUTF8Character(PChar(Pointer(s)),length(s))<0 then // UTF-8 Mattias _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal