AFAIK, in current Delphi (which I don't have) a "String" is a variable that can contain dynamically coded informations (such as locally coded 8-Bit ANSI, UTF-8, UTF-16, ...) and - of course - know which code it holds.
I understand "By default, variables declared as type String are *UnicodeString*.**", that String=UnicodeString
See: http://docwiki.embarcadero.com/VCL/en/System.UnicodeString
and also http://docwiki.embarcadero.com/RADStudio/en/String_Types#UnicodeString

Note alse, that AnsiString holds additional informations about character encoding: "The AnsiString <http://docwiki.embarcadero.com/VCL/en/System.AnsiString> structure contains a 32-bit length indicator, a 32-bit reference count, a 16-bit data length indicating the number of bytes per character, and a 16-bit code page."

-Laco.


If a string is generated by the VCL from a Window API function, the coding will be UTF-16, though, but if you create a string with some other coding it will be automatically re-coded to UTF16 before sending it into a Windows API function.

-Michael
_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel


_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to