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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.06.2010, 13:17   #1
dante92
Пользователь
 
Регистрация: 07.12.2009
Сообщений: 28
По умолчанию открытие-закрытие файла

Помогите плиз дополнить юнит для откытия-закрытия файла.что тут можно переделать и добавить в меню??
Unit OPEN;
Interface
Uses crt;
Function FRead(Var InF:Text;Var Answer:byte; com:string):boolean;
Function FWrite(Var OutF:Text; Var name:string; Fn:byte; com:string):boolean;
Implementation
{отработка ошибок чтения}
Procedure Errors(key:byte);
Begin
case key of
0: Writeln('Вы пытаетесь открыть пустой файл.');
2: Writeln('Файл не найден.');
3: Writeln('Путь не найден.');
4: Writeln('Слишком много открытых файлов.');
5: Writeln('Отказано в доступе к файлу.');
else writeln('IOResult=',key);
end;
writeln('Нажмите любую клавишу для продолжения.');
while not KeyPressed do
end;

Function FRead(Var InF:Text; Var Answer:byte; com:string):boolean;
Var Name:string;
key:integer;
Begin
Repeat
Writeln('Укажите устройство ввода');
Writeln('(1) Файл');
Writeln('(2) Клавиатура');
Writeln('(3) Закончить работу');
Readln(Answer);
case Answer of
3: FRead:=False;
2: Begin
Assign(InF,'Con');
Reset(InF);
FRead:=true;
End;
1: begin
Writeln('Введите имя файла где находятся ',com,':');
Readln(Name);
Name:=Name;
Assign(InF,Name);
{$I-}
Reset(InF);
{$I+}
key:=IOResult;
If (key>0) or (Name='') then
begin
Errors(key);
Answer:=0;
end
Else FRead:=true;
end;
end;
Until Answer in [1..3];
End;
{запись на выбранное устройство}
Function FWrite(Var OutF:Text; Var name:string; Fn:byte; com:string):boolean;
Var
key:integer;
Flag:boolean;
Begin
Flag:=True;
Repeat
Writeln('Укажите куда напечатать ',com,':');
writeln('(1) Файл');
writeln('(2) Монитор');
writeln('(3) Принтер');
writeln('(4) Не печатать');
Readln(FN);
Until Fn in [1..4];
Case Fn of
1: begin
Writeln('Введите имя файла где будут храниться ',com);
Readln(Name);
Name:=Name+'.txt';
end;
2: Name:='con';
3: Name:='Prn';
4: Name:='null';
End;
Assign(OutF,Name);
{$I-}
Reset(OutF);
{$I+}
key:=IOResult;
Rewrite(OutF);
FWrite:=Flag;
End;
END.
dante92 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
открытие файла Pti44ka Общие вопросы .NET 5 10.05.2010 10:17
Открытие/Закрытие CD привода unicode Общие вопросы C/C++ 4 22.07.2009 15:17
Открытие файла и создание графика на основе чисел из файла Simon..14 Общие вопросы C/C++ 8 09.06.2009 10:18
Открытие файла Veiron Общие вопросы Delphi 2 27.02.2008 03:12