An old trick that I tend to forget: [WayBack] delphi – How to convert a null terminated string to string? – Stack Overflow:
You can assign a null-terminated
PChar
directly to aString
:function GetFileName(DiskName: TFileNameIO): string; begin Result := PChar(@DiskName); end;
It can work even on string literals and constants, where you can leave out the @
, like in:
var S: string; begin S := PChar(FastMM4Messages.LogFileExtension;
Probably time to update the unit I mention in ISO 8601 Date, Time and DateTime in Delphi (was: Simple example to show DateTime.Now in ISO 8601 format on ideone.com | Online C# Compiler & Debugging Tool).
–jeroen