[fpc-pascal] Read lines into UnicodeString variable from UCS2 (UTF-16) encoded text file
LacaK
lacak at zoznam.sk
Wed Sep 4 11:08:21 CEST 2019
>
>> is there any smart way how to read string data line by line from UCS2
>> encoded text files (lines delimited by $0A00).
> So, some LoadFromFile with a stream is no option for you?
It should be an option, but AFAIK LoadFromFile with optional TEncoding
is not a part of FPC 3.0.4
It is only in upcoming 3.2.0 ...
>
>> I wonder if Delphi supports ReadLn() for UTF-16 encoded text files ...?
> From what I gather from the Embarcadero wiki and google searches it does not.
> I only have D7 so I cannot test that myself though,
>
> Seems you need to use LoadFromFile with a TEncoding specified, see:
> http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Using_TEncoding_for_Unicode_Files
Yes it was my impression also ... I was wondering if there is other way?
(best using ReadLn() ... so I can open TextFile, then read first 2-3
bytes (BOM) and detect what encoding file has (UTF-8 or UTF-16) and then
either use ReadLn with AnsiString (UTF-8 case) or UnicodeString (UTF-16
case))
L.
>
> Bart
More information about the fpc-pascal
mailing list