mam jedno pytanie odnosnie tego przykladu.
zagadnienie jest trywialne ale pytam bo z mojego punktu widzenia nie powinno dzialac... chyba;)
funkcja dzielaca plik na czesci nie odgrywa tu roli. chodzi o fragment kodu funkcji laczacej, wiec:
pod buttonem jest wywolanie owej funkcji i jako paramet przekazujemy katalog(nie sciezke do pliku) tylko katalog w ktorym sa pliki do polaczenia:
procedure TMainForm.btnConnectFileClick(Sender: TObject);
begin
ConnectFile(DirListBox.Directory);
end;
zaraz po wejsciu do procedury ConnectFile jest kod ktory twozy plik wyjsciowy:
if not FileExists(ExtractFileDir(Dir) + ChangeFileExt(ExtractFileName(Dir), '')) then
Output := TFileStream.Create(ExtractFileDir(Dir) + ChangeFileExt(ExtractFileName(Dir), ''), fmCreate)
else Output := TFileStream.Create(ExtractFileDir(Dir) + ChangeFileExt(ExtractFileName(Dir), ''), fmOpenWrite);
i tu jest moje pytanie. jak to jest skladane ze soba skoro do funkcji wysylamy sciezke katalogu wiec:
ExtractFileDir(Dir) da nam wlsnie ta sciezke, ExtractFileName(Dir) zwroci pusty string.
dalej:
Input := TFileStream.Create(Dir + '\' + ExtractFileName(ChangeFileExt(DirListBox.Directory, '')) + IntToStr(i) + '.temp',
jeki jest sens wywolania ChangeFileExt(DirListBox.Directory, '')? skoro DirListBox.Directory to katalog a nie plik, i jaki sens ma ExtractFileName z argumentem katalogu a nie sciezki do pliku?