ich bin vlei ein noob, aber ganz blöde och nich ^^
Delphi-Quellcode:
function split(s:
string; delimiter:
string; part:integer):
string;
var
i:integer;
begin
result:=s;
try
if length(s)>2
then
begin
i:=1;
while (s[i]<>delimiter)
and (i<length(s))
do
i:=i+1;
if (i<length(s))
and (i>1)
then
if part=1
then
result:=copy(s,1,i-1)
else
if part=2
then
result:=copy(s, i+1,length(s)-i);
end;
except
on e :
exception do
form1.memo1.lines.add('
error in split-function '+e.
message);
end;
end;
function UniqueFileName(s:
string):
string;
var
i:integer;
part1, part2:
string;
begin
result:=s;
try
if fileexists(s)
then
begin
part2:=reversestring(split(reversestring(s),'
.',1));
part1:=reversestring(split(reversestring(s),'
.',2));
i:=1;
while fileexists(part1+'
('+inttostr(i)+'
).'+part2)
do
i:=i+1;
result:=part1+'
('+inttostr(i)+'
).'+part2;
end;
except
on e :
exception do
form1.Memo1.Lines.Add('
error in function uniquefilename '+e.
message);
end;
end;
Es müssten die Dateien
test.pdf
test(1).pdf
.
.
.
test(9).pdf
entstehen.
Es entstehen aber nicht 10, sondern weniger (immer unterschiedlich viele) Dateien. Spannend ist auch, dass er eben 5 mal ins memo geschrieben hat, dass was kommt, aber nur 3 Dateien entstanden sind.