Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2009, 17:54   #1
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
Восклицание FileExists

В АВС Паскале есть процедура FileExists(х). Она возвращает истину если имеется файл на жестком диске с именем Х и ложь если его нет. Дання процедур не работает в Простом Паскале. Есть ли альтернатива?
Desha вне форума Ответить с цитированием
Старый 30.10.2009, 20:00   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

вот два варианта. выбирайте любой, какой нравится:

Код:
uses Dos;

function FileExist(FileName : string) : boolean;
var
  FileParameters : SearchRec;
begin
  FindFirst(FileName,AnyFile,FileParameters);
  if (DosError = 0) { or (DosError = 18)}
    then
      FileExist := True
    else
      FileExist := False;
end;
Код:
function ExistFile(FName:string):Boolean;
var
        F:File;
begin
        Assign(F,FName);
        {$I-}
        Reset(F,1);
        {$I+}
        If IoResult=0 then begin
                ExistFile:=True;
                Close(F);
        end
        else
                ExistFile:=false;
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.10.2009, 20:05   #3
Desha
Форумчанин
 
Аватар для Desha
 
Регистрация: 06.04.2009
Сообщений: 124
По умолчанию

Нашла вариан для тех, кто не хочет возиться с процедурами. Для лучшей понятности вывожу сообщения-итоги проверки
Код:
 Assign(f,fname);
     {$I-}
     Reset(f);
     {$I+}
     If IOResult=0 then Writeln('File Yes')
      else
      If IOresult<>1 then Writeln('File No');

Последний раз редактировалось Desha; 31.10.2009 в 19:56.
Desha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вопрос по FileExists kate158 Помощь студентам 5 14.08.2008 16:14