[Lazarus] Making sources compatible with Delphi (but Lazarus is priority)

Michael Van Canneyt michael at freepascal.org
Fri May 5 11:23:55 CEST 2017



On Fri, 5 May 2017, Ondrej Pokorny via Lazarus wrote:

> On 05.05.2017 11:06, Graeme Geldenhuys via Lazarus wrote:
>> On 2017-05-05 07:43, Michael Van Canneyt via Lazarus wrote:
>>> As far as I know, you don't need any tricks to work with unicode
>>> filenames or output in 3.0.2. Maybe with exception of TStrings and
>>> TFileStream.
>> Again, I didn't have time to follow FPC 3.x development much, and I was too
>> confused with all the Unicode changes.
>>
>> With FPC 3.0.x, can you now load text files from disk using TStringList and
>> specify the encoding of the file at load time?
>>
>> Something like:
>>
>>    sl.LoadFromFile('some_utf8_file.txt', CP_UTF8);
>>    sl.LoadFromFile('some_utf16_file.txt', CP_UTF16);
>>    sl.LoadFromFile('some_latin1_file.txt', CP_Latin1);
>
> I don't know about 3.0.x but you can do it in trunk 3.1.1. I posted a 
> patch for it (r34475). I also extended TEncoding to support AnsiString, 
> which was the requirement for TStrings encoding support.

Yes, this somewhat alleviates the problem; 
but this still is a single-byte TStrings, as opposed to the WideString
TStrings of Delphi. It's also still a single-byte filename argument.

Michael.


More information about the Lazarus mailing list