Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Переменная DosError





Переменная DosError используется многими программами в модуле Dos для указания ошибок.

var DosError: Integer;

Значение, возвращаемое в DosError, представляет собой код ошибки операционной системы. Значение 0 означает «нет ошибки», другие коды означают:

 

Код ошибки DOS Значение
  Файл не найден
  Путь не найден
  Доступ запрещен
  Неверный обработчик
  Нет памяти
  Неправильная среда
  Неправильный формат
  Больше нет файлов

 

ЗАДАНИЕ

Напишите программу, производящую сканирование диска, определение его размера, объема свободного пространства, вывод списка файлов по заданному шаблону, поиск указанного файла и его переименование.

Program Find_Ren_File;

uses Dos, Crt;

var

Fil: File of byte;

FileInfo: SearchRec;

H, M, S, Hund: word; {переменные ч, мин, с, 0.01 с для GetTime}

Ftime: longint; {упакованные время и дата в GetFTime}

T: DateTime; {распакованные дата и время в переменной типа DateTime}

Dir_s, N, E, Name, New_Name: string;

I, P: integer;

function LeadingZero (W: Word): string; {преобразовать время в строку

var

S: string;

begin

Str (W: 0, s);

If Length (S)=1 then

S: =’0’+S;

LeadingZero: =S;

end;

procedure Nam_Ext_File; {отделить имя и расширение файла}

begin

P: =Pos (‘.’, FileInfo, Name); {определить позицию символа «.» в имени файла}

if P> 1 then

begin

N: =Copy (FileInfo. Name, 1, P-1);

E: =Copy (FileInfo. Name, P+1, 3);

end else {расширение отсутствует}

begin

N: =FileInfo. Name;

E: =’ ‘;

end;

end;

procedure Rename_File; {переименовать файл}

begin

write (‘Введите новое имя файла: ’);

readln (New_Name);

rename (Fil, New_Name);

writeln (‘Файл’, Name, ‘переименован в’, New_Name, ‘, нажмите Enter…’);

readln;

end;

begin {основная программа}

ClrScr;

GetTime (H, M, S, Hund); {прочитать системное время}

Writeln (‘Текущее время: ‘, LeadingZero (H), ‘: ’, LeadingZero (M), ‘: ’, LeadingZero (S));

GetDir (0, Dir_s); {0=читать каталог текущего диска}

Writeln (DiskSize (0) div 1024, ‘Кбайт на диске’);

Writeln (DiscFree(0) div 1024, ‘Кбайт свободно’);

Writeln;

I: =0; {пока не найдено ни одного файла}

FindFirst (‘*.pas’, Archive, FileInfo);

Writeln (‘Имя файла Размер (байт) Дата Время создания’);

Writeln;

while DosError=0 do {пока поиск файла завершается успешно}

begin

I: =I+1; {найден еще один файл}

Assign (Fil, FileInfo. Name);

Nam_Ext_File; {отделить имя файла от расширения}

Write (N, ‘ ‘: 9 – Length (N), E, ‘ ‘: 4 – Length (E));

Write (‘ ‘, FileInfo. Size: 8);

GetFTime (Fil, Ftime); {возвратить дату и время последнего изменения файла}

UnpackTime (FileInfo. Time, T); {преобразует 4-байтовые, упакованные в Longint время и дату в распакованную запись типа DateTime}

Write (‘ ‘, T. Day: 2, ‘-‘, T. Month: 2, ‘-‘, T. Year: 4);

Writeln (‘ ‘, T. Hour: 2, ‘: ’, T. Min: 2, ‘: ’, T. Sec: 2);

FindNext (FileInfo);

end;

writeln;

writeln (‘В текущем каталоге найдено’, I, ‘архивных файлов с расширением.PAS’);

repeat

write (‘Введите имя файла для переименования > ’);

readln (Name);

{искать файл в каталогах, описанных в переменной окружения PATH}

if Fsearch (Name, GetEnv (‘PATH’))=’ ‘ then

writeln (‘на диске нет файла’, Name);

until Fsearch (Name, GetEnv (‘PATH’)) < < @062> ‘ ‘; {найден файл Name}

Assign (Fil, Name);

Rename_File; {вызов процедуры переименования файла}

end.

 







Дата добавления: 2014-11-10; просмотров: 705. Нарушение авторских прав; Мы поможем в написании вашей работы!




Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...


Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...


Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ОСНОВНЫЕ ТИПЫ МОЗГА ПОЗВОНОЧНЫХ Ихтиопсидный тип мозга характерен для низших позвоночных - рыб и амфибий...

Принципы, критерии и методы оценки и аттестации персонала   Аттестация персонала является одной их важнейших функций управления персоналом...

Пункты решения командира взвода на организацию боя. уяснение полученной задачи; оценка обстановки; принятие решения; проведение рекогносцировки; отдача боевого приказа; организация взаимодействия...

Эндоскопическая диагностика язвенной болезни желудка, гастрита, опухоли Хронический гастрит - понятие клинико-анатомическое, характеризующееся определенными патоморфологическими изменениями слизистой оболочки желудка - неспецифическим воспалительным процессом...

Признаки классификации безопасности Можно выделить следующие признаки классификации безопасности. 1. По признаку масштабности принято различать следующие относительно самостоятельные геополитические уровни и виды безопасности. 1.1. Международная безопасность (глобальная и...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

Studopedia.info - Студопедия - 2014-2025 год . (0.012 сек.) русская версия | украинская версия