Hallo Lucas,
du fragst, was du besser machen kannst? Hier ein paar Vorschläge:
Delphi-Quellcode:
program add;
{$APPTYPE CONSOLE}
uses
SysUtils,
Classes;
const
MAX_COUNT = 7;
resourcestring
S_FILENAME = 'data.list';
S_SUCCESS = 'Link created succesfully.';
S_PARAMCOUNT = 'Some Parameters ignored';
S_OVERFLOW = 'List overflow';
S_WAITING = 'Press enter to continue ...';
begin
if ParamCount = 1 then
with TStringlist.Create do
try
LoadFromFile(S_FILENAME);
if sl.Count < MAX_COUNT then
begin
Add(Paramstr(1));
SaveToFile(S_FILENAME);
WriteLn(S_SUCCESS);
end else WriteLn(S_OVERFLOW);
finally
Free;
end
else WriteLn(S_PARAMCOUNT);
WriteLn(S_WAITING);
ReadLn;
end.
Deine Datei liegt immer im Arbeitsverzeichnis deines Programms. Wer keine Leerzeilen schreibt, der muss sie später auch nicht raus löschen. Ohne ReadLn() hast du keine Chance deine Ausgaben wahrzunehmen. Bei Zugriffsproblemen innerhalb von LoadFromFile() oder SaveToFile() wird eine
Exception geworfen, die noch nicht behandelt wird. Lass dir was dazu einfallen.
Grüße vom marabu