![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
От!чень глупый вопрос
LamerOk © (2004-08-31 00:17:00)Как проварить- существует ли файл с указанным именем ????
Ega23 (2004-09-01 11:08:00) [1]2 AlexKocharin (01.09.04 11:00) [10]
function FileExists(const FileName: string): Boolean;
begin
Result := FileAge(FileName) <> -1;
end;
function FileAge(const FileName: string): Integer;
var
Handle: THandle;
FindData: TWin32FindData;
LocalFileTime: TFileTime;
begin
Handle := FindFirstFile(PChar(FileName), FindData);
if Handle <> INVALID_HANDLE_VALUE then
begin
Windows.FindClose(Handle);
if (FindData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) = 0 then
begin
FileTimeToLocalFileTime(FindData.ftLastWriteTime, LocalFileTime);
if FileTimeToDosDateTime(LocalFileTime, LongRec(Result).Hi,
LongRec(Result).Lo) then Exit;
end;
end;
Result := -1;
end;
Зачем велосипед изобретать?
Vovchik_A (2004-09-01 11:04:00) [2]2AlexKocharin (01.09.04 10:58) [9]
Ну не пиши тогда под Windows.
2LamerOk (31.08.04 00:17)
Читать хелп на FileExists до полного понимания.
Ega23 (2004-09-01 11:02:00) [3]Способ DOS'овский, без использодания Мастдайных WinAPI;
Можно и без WinAPI, на уровне ядра написать. Хотя один хрен API-прослойку делать предётся.
AlexKocharin (2004-09-01 11:00:00) [4]Извините, не то добавил...
var f:file;ior:integer;
assignfile(f,filename);
{$i-}
reset(f);
{$i+}
ior:=ioresult;
if ior=0 then ShowMessage('Файл существует!!!')
else ShowMessage('Глюк № '+ior);
AlexKocharin (2004-09-01 10:58:00) [5]А чем вам не нравится
var f:file;ior:integer;
s:=findfirst(
ior:=ioresult;
if ior=0 then ShowMessage('Файл существует!!!')
else ShowMessage('Глюк № '+ior);
Способ DOS'овский, без использодания Мастдайных WinAPI;
Алхимик (2004-08-31 14:51:00) [6]
> then Сучествует
Что, простите делает?
_sulent (2004-08-31 13:28:00) [7]if FileExists('c:\failo.txt') then Сучествует
else Не сучествует
MU (2004-08-31 12:56:00) [8]>>Александр1 (31.08.04 12:46) [5]
Ну, блин, круто!!! :)))
Хоть бы пример скопировал из HELP'a
Александр1 (2004-08-31 12:46:00) [9]Этот способ основан на поиске файла по заданному пути!
var s:string;
.....
s:=FileSearch('C:\Windows\System\R.def','');
if s<>'C:\Windows\System\R.def' then begin
rez:=MessageDlg('Файл не существует!',mtError,[mbOK],0);
Form1.Close;
end;
if s='C:\Windows\System\R.def' then begin
rez:=MessageDlg('Файл существует!',mtError,[mbOK],0);
Form1.Close;
end;
Iconka (2004-08-31 09:14:00) [10]
> там, в просторах вселенной, уже давно отказались от файлов...
Так же вполне возможно что их еще не придумали.
KilkennyCat (2004-08-31 01:30:00) [11]
> Palladin © (31.08.04 00:20) [1]
не уверен - там, в просторах вселенной, уже давно отказались от файлов...
Алхимик (2004-08-31 00:21:00) [12]FileExists + F1
Palladin (2004-08-31 00:20:00) [13]Может где то в просторах вселенной и существует...