Einzelnen Beitrag anzeigen

Benutzerbild von implementation
implementation

Registriert seit: 5. Mai 2008
940 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Name für temporäre Datei erzeugen

  Alt 24. Feb 2009, 14:09
Zitat von nahpets:
Hallo,

muss das nichtelse Result := Result + fmt[i]; heißen?
Da hast du Recht.
Das war das Problem.
Zitat von jaenicke:
Die Funktionen GetTempPath und GetTempFileName kennst du aber?
Sicher, es geht hier aber darum, einen Dateinamen für eine temporäre Datei im gleichen Verzeichnis zu erzeugen.

Zitat von himitsu:
Schon mal was von StringReplace gehört?
Delphi-Quellcode:
function CreateTempFile(index: Word; digits: Byte = 4;
  divider: Char='~'; fmt: String='wdpai%s%.*d.tmp'): String;
begin
  Result := StringReplace(fmt, '~', divider, [rfReplaceAll]);
  Result := StringReplace(Result, '$', IntToHex(index, digits), [rfReplaceAll]);
end;
Nein, StringReplace kannte ich nicht.
Eswäre wohl aber eine sinnvolle Lösung.
Zitat von himitsu:
Ich hätt das Ganze allerdings eher mit Format gelöst
und die Maske etwas angepaßt.
Delphi-Quellcode:
function CreateTempFile(index: Word; digits: Byte = 4;
  divider: Char='~'; fmt: String='wdpai%s%.*d.tmp'): String;
begin
  Result := Format(fmt, [divider, digits, index]);
end;
Mir Format wollte ich es nicht lösen, da ich meine eigenen Replace-Zeichen dafür wollte.
Marvin
  Mit Zitat antworten Zitat