Hart-codierte sind immer eine extrem schlechte Idee.
Darum gibt es auch einige Funktionen, welche einem einen bestimmten Systempfad nennen.
IOUtils.TPath.GetDocumentsPath oder Dergleichen
Eine fehlende Fehlerbehandlung (Ressourcenschutzblock aka Try-Except/Finally) ist auch keine gute Idee.
Die "alten" Dateifunktionen könnte man nehmen, aber muß man nicht.
TStringList
IOUtils.TFile.WriteAllText bzw. WriteAllLines
TFileStream
TStringStream
...