On 06/25/2013 01:05 AM, Hans-Peter Diettrich wrote:
A RawByteString can obtain any encoding, so no conversions are required.
But when assigned back to an UnicodeString, the obtained encoding is
used to convert the string.
That sounds good. The name "RAW" just misled me to think it would not
hold a character encoding.
If this in fact is a completely dynamically encoded string type, things
like TStringList should use same in their interface, thus preventing all
conversions, when a string of any encoding type is stored there and
retrieved to a variable of the appropriate dedicated encoding type
(while being auto-converted if retrieved to variable forcing a different
encoding).
Only the documentation
http://docwiki.embarcadero.com/Libraries/XE4/en/System.RawByteString
shows that they seemingly are not convinced that all this decently works
:-( .
So a decent system should _additionally_ provide completely unencoded 8,
16, 32 and 64 Bit entity Strings for "technical" usage (similar to pipes
etc) (now not using the "RAW" naming :-) .
-Michael
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel